3 # Copyright (c) 2016 Orange and others.
5 # All rights reserved. This program and the accompanying materials
6 # are made available under the terms of the Apache License, Version 2.0
7 # which accompanies this distribution, and is available at
8 # http://www.apache.org/licenses/LICENSE-2.0
14 from click.testing import CliRunner
16 with mock.patch('functest.cli.commands.cli_testcase.CliTestcase.__init__',
17 mock.Mock(return_value=None)), \
18 mock.patch('functest.cli.commands.cli_tier.CliTier.__init__',
19 mock.Mock(return_value=None)):
20 from functest.cli import cli_base
23 class CliBaseTesting(unittest.TestCase):
26 self.runner = CliRunner()
27 self._openstack = cli_base._openstack
28 self._env = cli_base._env
29 self._testcase = cli_base._testcase
30 self._tier = cli_base._tier
32 def test_os_check(self):
33 with mock.patch.object(self._openstack, 'check') as mock_method:
34 result = self.runner.invoke(cli_base.os_check)
35 self.assertEqual(result.exit_code, 0)
36 self.assertTrue(mock_method.called)
38 def test_os_snapshot_create(self):
39 with mock.patch.object(self._openstack, 'snapshot_create') \
41 result = self.runner.invoke(cli_base.os_snapshot_create)
42 self.assertEqual(result.exit_code, 0)
43 self.assertTrue(mock_method.called)
45 def test_os_snapshot_show(self):
46 with mock.patch.object(self._openstack, 'snapshot_show') \
48 result = self.runner.invoke(cli_base.os_snapshot_show)
49 self.assertEqual(result.exit_code, 0)
50 self.assertTrue(mock_method.called)
52 def test_os_clean(self):
53 with mock.patch.object(self._openstack, 'clean') as mock_method:
54 result = self.runner.invoke(cli_base.os_clean)
55 self.assertEqual(result.exit_code, 0)
56 self.assertTrue(mock_method.called)
58 def test_os_show_credentials(self):
59 with mock.patch.object(self._openstack, 'show_credentials') \
61 result = self.runner.invoke(cli_base.os_show_credentials)
62 self.assertEqual(result.exit_code, 0)
63 self.assertTrue(mock_method.called)
65 def test_os_fetch_rc(self):
66 with mock.patch.object(self._openstack, 'fetch_credentials') \
68 result = self.runner.invoke(cli_base.os_fetch_rc)
69 self.assertEqual(result.exit_code, 0)
70 self.assertTrue(mock_method.called)
72 def test_env_prepare(self):
73 with mock.patch.object(self._env, 'prepare') as mock_method:
74 result = self.runner.invoke(cli_base.env_prepare)
75 self.assertEqual(result.exit_code, 0)
76 self.assertTrue(mock_method.called)
78 def test_env_show(self):
79 with mock.patch.object(self._env, 'show') as mock_method:
80 result = self.runner.invoke(cli_base.env_show)
81 self.assertEqual(result.exit_code, 0)
82 self.assertTrue(mock_method.called)
84 def test_env_status(self):
85 with mock.patch.object(self._env, 'status') as mock_method:
86 result = self.runner.invoke(cli_base.env_status)
87 self.assertEqual(result.exit_code, 0)
88 self.assertTrue(mock_method.called)
90 def test_testcase_list(self):
91 with mock.patch.object(self._testcase, 'list') as mock_method:
92 result = self.runner.invoke(cli_base.testcase_list)
93 self.assertEqual(result.exit_code, 0)
94 self.assertTrue(mock_method.called)
96 def test_testcase_show(self):
97 with mock.patch.object(self._testcase, 'show') as mock_method:
98 result = self.runner.invoke(cli_base.testcase_show, ['testname'])
99 self.assertEqual(result.exit_code, 0)
100 self.assertTrue(mock_method.called)
102 def test_testcase_run(self):
103 with mock.patch.object(self._testcase, 'run') as mock_method:
104 result = self.runner.invoke(cli_base.testcase_run,
105 ['testname', '--noclean'])
106 self.assertEqual(result.exit_code, 0)
107 self.assertTrue(mock_method.called)
109 def test_tier_list(self):
110 with mock.patch.object(self._tier, 'list') as mock_method:
111 result = self.runner.invoke(cli_base.tier_list)
112 self.assertEqual(result.exit_code, 0)
113 self.assertTrue(mock_method.called)
115 def test_tier_show(self):
116 with mock.patch.object(self._tier, 'show') as mock_method:
117 result = self.runner.invoke(cli_base.tier_show, ['tiername'])
118 self.assertEqual(result.exit_code, 0)
119 self.assertTrue(mock_method.called)
121 def test_tier_gettests(self):
122 with mock.patch.object(self._tier, 'gettests') as mock_method:
123 result = self.runner.invoke(cli_base.tier_gettests, ['tiername'])
124 self.assertEqual(result.exit_code, 0)
125 self.assertTrue(mock_method.called)
127 def test_tier_run(self):
128 with mock.patch.object(self._tier, 'run') as mock_method:
129 result = self.runner.invoke(cli_base.tier_run,
130 ['tiername', '--noclean'])
131 self.assertEqual(result.exit_code, 0)
132 self.assertTrue(mock_method.called)
135 if __name__ == "__main__":
136 logging.disable(logging.CRITICAL)
137 unittest.main(verbosity=2)