summaryrefslogtreecommitdiffstats
path: root/functest/tests/unit/cli
diff options
context:
space:
mode:
Diffstat (limited to 'functest/tests/unit/cli')
-rw-r--r--functest/tests/unit/cli/__init__.py0
-rw-r--r--functest/tests/unit/cli/commands/__init__.py0
-rw-r--r--functest/tests/unit/cli/commands/test_cli_env.py69
-rw-r--r--functest/tests/unit/cli/commands/test_cli_os.py78
-rw-r--r--functest/tests/unit/cli/commands/test_cli_testcase.py77
-rw-r--r--functest/tests/unit/cli/commands/test_cli_tier.py104
-rw-r--r--functest/tests/unit/cli/test_cli_base.py102
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)