diff options
Diffstat (limited to 'functest/tests/unit/ci')
-rw-r--r-- | functest/tests/unit/ci/test_run_tests.py | 36 |
1 files changed, 24 insertions, 12 deletions
diff --git a/functest/tests/unit/ci/test_run_tests.py b/functest/tests/unit/ci/test_run_tests.py index 0bb4315e..bc967743 100644 --- a/functest/tests/unit/ci/test_run_tests.py +++ b/functest/tests/unit/ci/test_run_tests.py @@ -14,7 +14,6 @@ import os import mock from functest.ci import run_tests -from functest.utils.constants import CONST from functest.core.testcase import TestCase @@ -55,7 +54,7 @@ class RunTestsTesting(unittest.TestCase): self.run_tests_parser = run_tests.RunTestsParser() - @mock.patch('functest.ci.run_tests.ft_utils.get_dict_by_test') + @mock.patch('functest.ci.run_tests.Runner.get_dict_by_test') def test_get_run_dict(self, *args): retval = {'run': mock.Mock()} args[0].return_value = retval @@ -63,7 +62,7 @@ class RunTestsTesting(unittest.TestCase): args[0].assert_called_once_with('test_name') @mock.patch('functest.ci.run_tests.LOGGER.error') - @mock.patch('functest.ci.run_tests.ft_utils.get_dict_by_test', + @mock.patch('functest.ci.run_tests.Runner.get_dict_by_test', return_value=None) def test_get_run_dict_config_ko(self, *args): testname = 'test_name' @@ -77,7 +76,7 @@ class RunTestsTesting(unittest.TestCase): args[1].assert_has_calls(calls) @mock.patch('functest.ci.run_tests.LOGGER.exception') - @mock.patch('functest.ci.run_tests.ft_utils.get_dict_by_test', + @mock.patch('functest.ci.run_tests.Runner.get_dict_by_test', side_effect=Exception) def test_get_run_dict_exception(self, *args): testname = 'test_name' @@ -93,7 +92,8 @@ class RunTestsTesting(unittest.TestCase): envfile = 'rc_file' with mock.patch('six.moves.builtins.open', mock.mock_open(read_data=msg), - create=True) as mock_method: + create=True) as mock_method,\ + mock.patch('os.path.isfile', return_value=True): mock_method.return_value.__iter__ = lambda self: iter( self.readline, '') self.runner.source_envfile(envfile) @@ -113,6 +113,19 @@ class RunTestsTesting(unittest.TestCase): self._test_source_envfile( 'export "\'OS_TENANT_NAME\'" = "\'admin\'"') + def test_get_dict_by_test(self): + with mock.patch('six.moves.builtins.open', mock.mock_open()), \ + mock.patch('yaml.safe_load') as mock_yaml: + mock_obj = mock.Mock() + testcase_dict = {'case_name': 'testname', + 'criteria': 50} + attrs = {'get.return_value': [{'testcases': [testcase_dict]}]} + mock_obj.configure_mock(**attrs) + mock_yaml.return_value = mock_obj + self.assertDictEqual( + run_tests.Runner.get_dict_by_test('testname'), + testcase_dict) + @mock.patch('functest.ci.run_tests.Runner.get_run_dict', return_value=None) def test_run_tests_import_exception(self, *args): @@ -129,7 +142,7 @@ class RunTestsTesting(unittest.TestCase): @mock.patch('importlib.import_module', name="module", return_value=mock.Mock(test_class=mock.Mock( side_effect=FakeModule))) - @mock.patch('functest.utils.functest_utils.get_dict_by_test') + @mock.patch('functest.ci.run_tests.Runner.get_dict_by_test') def test_run_tests_default(self, *args): mock_test = mock.Mock() kwargs = {'get_name.return_value': 'test_name', @@ -164,7 +177,7 @@ class RunTestsTesting(unittest.TestCase): @mock.patch('functest.ci.run_tests.Runner.run_tier') @mock.patch('functest.ci.run_tests.Runner.summary') def test_run_all_default(self, *mock_methods): - CONST.__setattr__('CI_LOOP', 'test_ci_loop') + os.environ['CI_LOOP'] = 'test_ci_loop' self.runner.run_all() mock_methods[1].assert_not_called() self.assertTrue(mock_methods[2].called) @@ -172,7 +185,7 @@ class RunTestsTesting(unittest.TestCase): @mock.patch('functest.ci.run_tests.LOGGER.info') @mock.patch('functest.ci.run_tests.Runner.summary') def test_run_all_missing_tier(self, *mock_methods): - CONST.__setattr__('CI_LOOP', 'loop_re_not_available') + os.environ['CI_LOOP'] = 'loop_re_not_available' self.runner.run_all() self.assertTrue(mock_methods[1].called) @@ -187,8 +200,7 @@ class RunTestsTesting(unittest.TestCase): self.runner.tiers.configure_mock(**args) self.assertEqual(self.runner.main(**kwargs), run_tests.Result.EX_ERROR) - mock_methods[1].assert_called_once_with( - '/home/opnfv/functest/conf/env_file') + mock_methods[1].assert_called_once_with() @mock.patch('functest.ci.run_tests.Runner.source_envfile') @mock.patch('functest.ci.run_tests.Runner.run_test', @@ -237,7 +249,7 @@ class RunTestsTesting(unittest.TestCase): run_tests.Result.EX_OK) args[0].assert_called_once_with(None) args[1].assert_called_once_with() - args[2].assert_called_once_with('/home/opnfv/functest/conf/env_file') + args[2].assert_called_once_with() @mock.patch('functest.ci.run_tests.Runner.source_envfile') def test_main_any_tier_test_ko(self, *args): @@ -248,7 +260,7 @@ class RunTestsTesting(unittest.TestCase): self.assertEqual( self.runner.main(test='any', noclean=True, report=True), run_tests.Result.EX_ERROR) - args[0].assert_called_once_with('/home/opnfv/functest/conf/env_file') + args[0].assert_called_once_with() if __name__ == "__main__": |