diff options
Diffstat (limited to 'functest/tests/unit/cli')
-rw-r--r-- | functest/tests/unit/cli/__init__.py | 0 | ||||
-rw-r--r-- | functest/tests/unit/cli/commands/__init__.py | 0 | ||||
-rw-r--r-- | functest/tests/unit/cli/commands/test_cli_env.py | 69 | ||||
-rw-r--r-- | functest/tests/unit/cli/commands/test_cli_os.py | 78 | ||||
-rw-r--r-- | functest/tests/unit/cli/commands/test_cli_testcase.py | 77 | ||||
-rw-r--r-- | functest/tests/unit/cli/commands/test_cli_tier.py | 104 | ||||
-rw-r--r-- | functest/tests/unit/cli/test_cli_base.py | 102 |
7 files changed, 0 insertions, 430 deletions
diff --git a/functest/tests/unit/cli/__init__.py b/functest/tests/unit/cli/__init__.py deleted file mode 100644 index e69de29b..00000000 --- a/functest/tests/unit/cli/__init__.py +++ /dev/null diff --git a/functest/tests/unit/cli/commands/__init__.py b/functest/tests/unit/cli/commands/__init__.py deleted file mode 100644 index e69de29b..00000000 --- a/functest/tests/unit/cli/commands/__init__.py +++ /dev/null diff --git a/functest/tests/unit/cli/commands/test_cli_env.py b/functest/tests/unit/cli/commands/test_cli_env.py deleted file mode 100644 index 7d6f7787..00000000 --- a/functest/tests/unit/cli/commands/test_cli_env.py +++ /dev/null @@ -1,69 +0,0 @@ -#!/usr/bin/env python - -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 - -# pylint: disable=missing-docstring - -import logging -import os -import re -import unittest - -import mock - -from functest.cli.commands import cli_env - - -class RegexMatch(object): # pylint: disable=too-few-public-methods - def __init__(self, msg): - self.msg = msg - - def __eq__(self, other): - match = re.search(self.msg, other) - return match is not None - - -class CliEnvTesting(unittest.TestCase): - - def setUp(self): - self.cli_environ = cli_env.CliEnv() - - def _test_show_missing_env_var(self, var, *args): - # pylint: disable=unused-argument - if var == 'INSTALLER_TYPE': - os.environ['INSTALLER_TYPE'] = '' - reg_string = r"| INSTALLER: Unknown, \S+\s*|" - elif var == 'SCENARIO': - os.environ['DEPLOY_SCENARIO'] = '' - reg_string = r"| SCENARIO: Unknown\s*|" - elif var == 'NODE': - os.environ['NODE_NAME'] = '' - reg_string = r"| POD: Unknown\s*|" - elif var == 'BUILD_TAG': - os.environ['BUILD_TAG'] = '' - reg_string = r"| BUILD TAG: None|" - - with mock.patch('functest.cli.commands.cli_env.click.echo') \ - as mock_click_echo: - self.cli_environ.show() - mock_click_echo.assert_called_with(RegexMatch(reg_string)) - - def test_show_ci_installer_type_ko(self, *args): - self._test_show_missing_env_var('INSTALLER_TYPE', *args) - - def test_show_missing_ci_scenario(self, *args): - self._test_show_missing_env_var('SCENARIO', *args) - - def test_show_missing_ci_node(self, *args): - self._test_show_missing_env_var('NODE', *args) - - def test_show_missing_ci_build_tag(self, *args): - self._test_show_missing_env_var('BUILD_TAG', *args) - - -if __name__ == "__main__": - logging.disable(logging.CRITICAL) - unittest.main(verbosity=2) diff --git a/functest/tests/unit/cli/commands/test_cli_os.py b/functest/tests/unit/cli/commands/test_cli_os.py deleted file mode 100644 index a5e562a2..00000000 --- a/functest/tests/unit/cli/commands/test_cli_os.py +++ /dev/null @@ -1,78 +0,0 @@ -#!/usr/bin/env python -# -# jose.lausuch@ericsson.com -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 - -# pylint: disable=missing-docstring - -import logging -import unittest -import os - -import mock - -from functest.cli.commands import cli_os - - -class CliOpenStackTesting(unittest.TestCase): - - def setUp(self): - self.endpoint_ip = 'test_ip' - self.os_auth_url = 'http://test_ip:test_port/v2.0' - self.installer_type = 'test_installer_type' - self.openstack_creds = 'test_env_file' - self.snapshot_file = 'test_snapshot_file' - os.environ["OS_AUTH_URL"] = '' - self.cli_os = cli_os.CliOpenStack() - - def test_ping_endpoint_default(self): - self.cli_os.os_auth_url = self.os_auth_url - self.cli_os.endpoint_ip = self.endpoint_ip - with mock.patch('functest.cli.commands.cli_os.os.system', - return_value=0): - self.assertEqual(self.cli_os.ping_endpoint(), 0) - - @mock.patch('functest.cli.commands.cli_os.exit', side_effect=Exception) - @mock.patch('functest.cli.commands.cli_os.click.echo') - def test_ping_endpoint_auth_url_ko(self, mock_click_echo, mock_exit): - with self.assertRaises(Exception): - self.cli_os.os_auth_url = None - self.cli_os.ping_endpoint() - mock_click_echo.assert_called_once_with( - "Source the OpenStack credentials first") - mock_exit.assert_called_once_with(0) - - @mock.patch('functest.cli.commands.cli_os.exit') - @mock.patch('functest.cli.commands.cli_os.click.echo') - def test_ping_endpoint_system_fails(self, mock_click_echo, mock_exit): - self.cli_os.os_auth_url = self.os_auth_url - self.cli_os.endpoint_ip = self.endpoint_ip - with mock.patch('functest.cli.commands.cli_os.os.system', - return_value=1): - self.cli_os.ping_endpoint() - mock_click_echo.assert_called_once_with( - "Cannot talk to the endpoint %s\n" % self.endpoint_ip) - mock_exit.assert_called_once_with(0) - - def test_check(self): - with mock.patch.object(self.cli_os, 'ping_endpoint'), \ - mock.patch('functest.cli.commands.cli_os.check_deployment.' - 'CheckDeployment') as mock_check_deployment: - self.cli_os.check() - self.assertTrue(mock_check_deployment.called) - - @mock.patch('functest.cli.commands.cli_os.click.echo') - def test_show_credentials(self, mock_click_echo): - key = 'OS_KEY' - value = 'OS_VALUE' - with mock.patch.dict(os.environ, {key: value}): - self.cli_os.show_credentials() - mock_click_echo.assert_any_call("{}={}".format(key, value)) - - -if __name__ == "__main__": - logging.disable(logging.CRITICAL) - unittest.main(verbosity=2) diff --git a/functest/tests/unit/cli/commands/test_cli_testcase.py b/functest/tests/unit/cli/commands/test_cli_testcase.py deleted file mode 100644 index 30e55fac..00000000 --- a/functest/tests/unit/cli/commands/test_cli_testcase.py +++ /dev/null @@ -1,77 +0,0 @@ -#!/usr/bin/env python - -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 - -# pylint: disable=missing-docstring - -import logging -import unittest - -import mock - -from functest.cli.commands import cli_testcase - - -class CliTestCasesTesting(unittest.TestCase): - - def setUp(self): - self.testname = 'testname' - with mock.patch('functest.ci.tier_builder'): - self.cli_tests = cli_testcase.CliTestcase() - - @mock.patch('functest.utils.functest_utils.execute_command') - def test_run_default(self, mock_ft_utils): - cmd = "run_tests -n -r -t {}".format(self.testname) - self.cli_tests.run(self.testname, noclean=True, report=True) - mock_ft_utils.assert_called_with(cmd) - - @mock.patch('functest.utils.functest_utils.execute_command') - def test_run_noclean_missing_report(self, mock_ft_utils): - cmd = "run_tests -n -t {}".format(self.testname) - self.cli_tests.run(self.testname, noclean=True, report=False) - mock_ft_utils.assert_called_with(cmd) - - @mock.patch('functest.utils.functest_utils.execute_command') - def test_run_report_missing_noclean(self, mock_ft_utils): - cmd = "run_tests -r -t {}".format(self.testname) - self.cli_tests.run(self.testname, noclean=False, report=True) - mock_ft_utils.assert_called_with(cmd) - - @mock.patch('functest.utils.functest_utils.execute_command') - def test_run_missing_noclean_report(self, mock_ft_utils): - cmd = "run_tests -t {}".format(self.testname) - self.cli_tests.run(self.testname, noclean=False, report=False) - mock_ft_utils.assert_called_with(cmd) - - @mock.patch('functest.cli.commands.cli_testcase.click.echo') - def test_list(self, mock_click_echo): - with mock.patch.object(self.cli_tests.tiers, 'get_tiers', - return_value=[]): - self.cli_tests.list() - mock_click_echo.assert_called_with("") - - @mock.patch('functest.cli.commands.cli_testcase.click.echo') - def test_show_default_desc_none(self, mock_click_echo): - with mock.patch.object(self.cli_tests.tiers, 'get_test', - return_value=None): - self.cli_tests.show(self.testname) - mock_click_echo.assert_any_call("The test case '%s' " - "does not exist or is" - " not supported." - % self.testname) - - @mock.patch('functest.cli.commands.cli_testcase.click.echo') - def test_show_default(self, mock_click_echo): - mock_obj = mock.Mock() - with mock.patch.object(self.cli_tests.tiers, 'get_test', - return_value=mock_obj): - self.cli_tests.show(self.testname) - mock_click_echo.assert_called_with(mock_obj) - - -if __name__ == "__main__": - logging.disable(logging.CRITICAL) - unittest.main(verbosity=2) diff --git a/functest/tests/unit/cli/commands/test_cli_tier.py b/functest/tests/unit/cli/commands/test_cli_tier.py deleted file mode 100644 index f81ad31d..00000000 --- a/functest/tests/unit/cli/commands/test_cli_tier.py +++ /dev/null @@ -1,104 +0,0 @@ -#!/usr/bin/env python - -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 - -# pylint: disable=missing-docstring - -import logging -import unittest - -import mock - -from functest.cli.commands import cli_tier - - -class CliTierTesting(unittest.TestCase): - - def setUp(self): - self.tiername = 'tiername' - self.testnames = 'testnames' - with mock.patch('functest.ci.tier_builder'): - self.cli_tier = cli_tier.CliTier() - - @mock.patch('functest.cli.commands.cli_tier.click.echo') - def test_list(self, mock_click_echo): - with mock.patch.object(self.cli_tier.tiers, 'get_tiers', - return_value=[]): - self.cli_tier.list() - mock_click_echo.assert_called_with("") - - @mock.patch('functest.cli.commands.cli_tier.click.echo') - def test_show_default(self, mock_click_echo): - with mock.patch.object(self.cli_tier.tiers, 'get_tier', - return_value=self.tiername): - self.cli_tier.show(self.tiername) - mock_click_echo.assert_called_with(self.tiername) - - @mock.patch('functest.cli.commands.cli_tier.click.echo') - def test_show_missing_tier(self, mock_click_echo): - with mock.patch.object(self.cli_tier.tiers, 'get_tier', - return_value=None), \ - mock.patch.object(self.cli_tier.tiers, 'get_tier_names', - return_value='tiernames'): - self.cli_tier.show(self.tiername) - mock_click_echo.assert_called_with("The tier with name '%s' does " - "not exist. Available tiers are" - ":\n %s\n" % (self.tiername, - 'tiernames')) - - @mock.patch('functest.cli.commands.cli_tier.click.echo') - def test_gettests_default(self, mock_click_echo): - mock_obj = mock.Mock() - attrs = {'get_test_names.return_value': self.testnames} - mock_obj.configure_mock(**attrs) - - with mock.patch.object(self.cli_tier.tiers, 'get_tier', - return_value=mock_obj): - self.cli_tier.gettests(self.tiername) - mock_click_echo.assert_called_with( - "Test cases in tier '%s':\n %s\n" % ( - self.tiername, self.testnames)) - - @mock.patch('functest.cli.commands.cli_tier.click.echo') - def test_gettests_missing_tier(self, mock_click_echo): - with mock.patch.object(self.cli_tier.tiers, 'get_tier', - return_value=None), \ - mock.patch.object(self.cli_tier.tiers, 'get_tier_names', - return_value='tiernames'): - self.cli_tier.gettests(self.tiername) - mock_click_echo.assert_called_with("The tier with name '%s' does " - "not exist. Available tiers are" - ":\n %s\n" % (self.tiername, - 'tiernames')) - - @mock.patch('functest.utils.functest_utils.execute_command') - def test_run_default(self, mock_ft_utils): - cmd = "run_tests -n -r -t {}".format(self.tiername) - self.cli_tier.run(self.tiername, noclean=True, report=True) - mock_ft_utils.assert_called_with(cmd) - - @mock.patch('functest.utils.functest_utils.execute_command') - def test_run_report_missing_noclean(self, mock_ft_utils): - cmd = "run_tests -r -t {}".format(self.tiername) - self.cli_tier.run(self.tiername, noclean=False, report=True) - mock_ft_utils.assert_called_with(cmd) - - @mock.patch('functest.utils.functest_utils.execute_command') - def test_run_noclean_missing_report(self, mock_ft_utils): - cmd = "run_tests -n -t {}".format(self.tiername) - self.cli_tier.run(self.tiername, noclean=True, report=False) - mock_ft_utils.assert_called_with(cmd) - - @mock.patch('functest.utils.functest_utils.execute_command') - def test_run_missing_noclean_report(self, mock_ft_utils): - cmd = "run_tests -t {}".format(self.tiername) - self.cli_tier.run(self.tiername, noclean=False, report=False) - mock_ft_utils.assert_called_with(cmd) - - -if __name__ == "__main__": - logging.disable(logging.CRITICAL) - unittest.main(verbosity=2) diff --git a/functest/tests/unit/cli/test_cli_base.py b/functest/tests/unit/cli/test_cli_base.py deleted file mode 100644 index 185a5220..00000000 --- a/functest/tests/unit/cli/test_cli_base.py +++ /dev/null @@ -1,102 +0,0 @@ -#!/usr/bin/env python - -# Copyright (c) 2016 Orange and others. -# -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 - -# pylint: disable=missing-docstring - -import logging -import os -import unittest - -import mock -from click.testing import CliRunner - -with mock.patch('functest.cli.commands.cli_testcase.CliTestcase.__init__', - mock.Mock(return_value=None)), \ - mock.patch('functest.cli.commands.cli_tier.CliTier.__init__', - mock.Mock(return_value=None)): - os.environ['OS_AUTH_URL'] = '' - from functest.cli import cli_base - - -class CliBaseTesting(unittest.TestCase): - - def setUp(self): - self.runner = CliRunner() - self._openstack = cli_base.OPENSTACK - self._env = cli_base.ENV - self._testcase = cli_base.TESTCASE - self._tier = cli_base.TIER - - def test_os_check(self): - with mock.patch.object(self._openstack, 'check') as mock_method: - result = self.runner.invoke(cli_base.os_check) - self.assertEqual(result.exit_code, 0) - self.assertTrue(mock_method.called) - - def test_os_show_credentials(self): - with mock.patch.object(self._openstack, 'show_credentials') \ - as mock_method: - result = self.runner.invoke(cli_base.os_show_credentials) - self.assertEqual(result.exit_code, 0) - self.assertTrue(mock_method.called) - - def test_env_show(self): - with mock.patch.object(self._env, 'show') as mock_method: - result = self.runner.invoke(cli_base.env_show) - self.assertEqual(result.exit_code, 0) - self.assertTrue(mock_method.called) - - def test_testcase_list(self): - with mock.patch.object(self._testcase, 'list') as mock_method: - result = self.runner.invoke(cli_base.testcase_list) - self.assertEqual(result.exit_code, 0) - self.assertTrue(mock_method.called) - - def test_testcase_show(self): - with mock.patch.object(self._testcase, 'show') as mock_method: - result = self.runner.invoke(cli_base.testcase_show, ['testname']) - self.assertEqual(result.exit_code, 0) - self.assertTrue(mock_method.called) - - def test_testcase_run(self): - with mock.patch.object(self._testcase, 'run') as mock_method: - result = self.runner.invoke(cli_base.testcase_run, - ['testname', '--noclean']) - self.assertEqual(result.exit_code, 0) - self.assertTrue(mock_method.called) - - def test_tier_list(self): - with mock.patch.object(self._tier, 'list') as mock_method: - result = self.runner.invoke(cli_base.tier_list) - self.assertEqual(result.exit_code, 0) - self.assertTrue(mock_method.called) - - def test_tier_show(self): - with mock.patch.object(self._tier, 'show') as mock_method: - result = self.runner.invoke(cli_base.tier_show, ['tiername']) - self.assertEqual(result.exit_code, 0) - self.assertTrue(mock_method.called) - - def test_tier_gettests(self): - with mock.patch.object(self._tier, 'gettests') as mock_method: - result = self.runner.invoke(cli_base.tier_gettests, ['tiername']) - self.assertEqual(result.exit_code, 0) - self.assertTrue(mock_method.called) - - def test_tier_run(self): - with mock.patch.object(self._tier, 'run') as mock_method: - result = self.runner.invoke(cli_base.tier_run, - ['tiername', '--noclean']) - self.assertEqual(result.exit_code, 0) - self.assertTrue(mock_method.called) - - -if __name__ == "__main__": - logging.disable(logging.CRITICAL) - unittest.main(verbosity=2) |