blob: 2daef7164ded30de2a8cae4319d73bea203c5bf3 [file] [log] [blame]
# Copyright 2015 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import unittest
import mock
import sys
sys.path.append('../..')
import base_container_check
from util import osutils
class TestBaseContainerCheck(unittest.TestCase):
def setUp(self):
config_patch = mock.patch('base_container_check.config')
config_patch.start()
config_mock = mock.MagicMock()
config_mock.get.return_value = 'test_base_container'
base_container_check.config.Config.return_value = config_mock
osutils_patch = mock.patch('base_container_check.osutils')
osutils_patch.start()
base_container_check.osutils.RunCommandError = osutils.RunCommandError
def test_check(self):
check = base_container_check.BaseContainerCheck()
self.assertEquals(base_container_check.BASE_CONTAINER_CODES.OK,
check.Check())
def test_check_missing(self):
base_container_check.osutils.run_command.side_effect = \
osutils.RunCommandError(1, 'error')
check = base_container_check.BaseContainerCheck()
self.assertEquals(
base_container_check.BASE_CONTAINER_CODES.BASE_CONTAINER_MISSING,
check.Check())
def test_diagnose(self):
check = base_container_check.BaseContainerCheck()
diagnosis_missing = check.Diagnose(
base_container_check.BASE_CONTAINER_CODES.BASE_CONTAINER_MISSING)
self.assertTrue('missing' in diagnosis_missing[0])
if __name__ == '__main__':
unittest.main()