summaryrefslogtreecommitdiffstats
path: root/tests/unit/benchmark/scenarios/availability
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unit/benchmark/scenarios/availability')
-rw-r--r--tests/unit/benchmark/scenarios/availability/test_monitor_command.py39
-rw-r--r--tests/unit/benchmark/scenarios/availability/test_serviceha.py32
-rw-r--r--tests/unit/benchmark/scenarios/availability/test_util.py39
3 files changed, 58 insertions, 52 deletions
diff --git a/tests/unit/benchmark/scenarios/availability/test_monitor_command.py b/tests/unit/benchmark/scenarios/availability/test_monitor_command.py
index 6a9b3b157..b84cef23c 100644
--- a/tests/unit/benchmark/scenarios/availability/test_monitor_command.py
+++ b/tests/unit/benchmark/scenarios/availability/test_monitor_command.py
@@ -19,30 +19,26 @@ import unittest
from yardstick.benchmark.scenarios.availability.monitor import monitor_command
-@mock.patch(
- 'yardstick.benchmark.scenarios.availability.monitor.monitor_command'
- '.subprocess')
+@mock.patch('subprocess.check_output')
class ExecuteShellTestCase(unittest.TestCase):
- def test__fun_execute_shell_command_successful(self, mock_subprocess):
+ def test__fun_execute_shell_command_successful(self, mock_subprocess_check_output):
cmd = "env"
- mock_subprocess.check_output.return_value = (0, 'unittest')
- exitcode, output = monitor_command._execute_shell_command(cmd)
+ mock_subprocess_check_output.return_value = (0, 'unittest')
+ exitcode, _ = monitor_command._execute_shell_command(cmd)
self.assertEqual(exitcode, 0)
@mock.patch('yardstick.benchmark.scenarios.availability.monitor.monitor_command.LOG')
def test__fun_execute_shell_command_fail_cmd_exception(self, mock_log,
- mock_subprocess):
+ mock_subprocess_check_output):
cmd = "env"
- mock_subprocess.check_output.side_effect = RuntimeError
- exitcode, output = monitor_command._execute_shell_command(cmd)
+ mock_subprocess_check_output.side_effect = RuntimeError
+ exitcode, _ = monitor_command._execute_shell_command(cmd)
self.assertEqual(exitcode, -1)
mock_log.error.assert_called_once()
-@mock.patch(
- 'yardstick.benchmark.scenarios.availability.monitor.monitor_command'
- '.subprocess')
+@mock.patch('subprocess.check_output')
class MonitorOpenstackCmdTestCase(unittest.TestCase):
def setUp(self):
@@ -59,24 +55,24 @@ class MonitorOpenstackCmdTestCase(unittest.TestCase):
'sla': {'max_outage_time': 5}
}
- def test__monitor_command_monitor_func_successful(self, mock_subprocess):
+ def test__monitor_command_monitor_func_successful(self, mock_subprocess_check_output):
instance = monitor_command.MonitorOpenstackCmd(self.config, None, {"nova-api": 10})
instance.setup()
- mock_subprocess.check_output.return_value = (0, 'unittest')
+ mock_subprocess_check_output.return_value = (0, 'unittest')
ret = instance.monitor_func()
- self.assertEqual(ret, True)
+ self.assertTrue(ret)
instance._result = {"outage_time": 0}
instance.verify_SLA()
@mock.patch('yardstick.benchmark.scenarios.availability.monitor.monitor_command.LOG')
- def test__monitor_command_monitor_func_failure(self, mock_log, mock_subprocess):
- mock_subprocess.check_output.return_value = (1, 'unittest')
+ def test__monitor_command_monitor_func_failure(self, mock_log, mock_subprocess_check_output):
+ mock_subprocess_check_output.return_value = (1, 'unittest')
instance = monitor_command.MonitorOpenstackCmd(self.config, None, {"nova-api": 10})
instance.setup()
- mock_subprocess.check_output.side_effect = RuntimeError
+ mock_subprocess_check_output.side_effect = RuntimeError
ret = instance.monitor_func()
- self.assertEqual(ret, False)
+ self.assertFalse(ret)
mock_log.error.assert_called_once()
instance._result = {"outage_time": 10}
instance.verify_SLA()
@@ -84,12 +80,13 @@ class MonitorOpenstackCmdTestCase(unittest.TestCase):
@mock.patch(
'yardstick.benchmark.scenarios.availability.monitor.monitor_command'
'.ssh')
- def test__monitor_command_ssh_monitor_successful(self, mock_ssh,
- mock_subprocess):
+ def test__monitor_command_ssh_monitor_successful(self, mock_ssh, mock_subprocess_check_output):
+ mock_subprocess_check_output.return_value = (0, 'unittest')
self.config["host"] = "node1"
instance = monitor_command.MonitorOpenstackCmd(
self.config, self.context, {"nova-api": 10})
instance.setup()
mock_ssh.SSH.from_node().execute.return_value = (0, "0", '')
ret = instance.monitor_func()
+ self.assertTrue(ret)
diff --git a/tests/unit/benchmark/scenarios/availability/test_serviceha.py b/tests/unit/benchmark/scenarios/availability/test_serviceha.py
index 4ae508958..97d534894 100644
--- a/tests/unit/benchmark/scenarios/availability/test_serviceha.py
+++ b/tests/unit/benchmark/scenarios/availability/test_serviceha.py
@@ -18,9 +18,6 @@ import unittest
from yardstick.benchmark.scenarios.availability import serviceha
-@mock.patch('yardstick.benchmark.scenarios.availability.serviceha.basemonitor')
-@mock.patch(
- 'yardstick.benchmark.scenarios.availability.serviceha.baseattacker')
class ServicehaTestCase(unittest.TestCase):
def setUp(self):
@@ -51,27 +48,32 @@ class ServicehaTestCase(unittest.TestCase):
sla = {"outage_time": 5}
self.args = {"options": options, "sla": sla}
- def test__serviceha_setup_run_successful(self, mock_attacker,
+ @mock.patch('yardstick.benchmark.scenarios.availability.serviceha.basemonitor')
+ @mock.patch(
+ 'yardstick.benchmark.scenarios.availability.serviceha.baseattacker')
+ def test__serviceha_setup_run_successful(self, _,
mock_monitor):
p = serviceha.ServiceHA(self.args, self.ctx)
p.setup()
- self.assertEqual(p.setup_done, True)
+ self.assertTrue(p.setup_done)
mock_monitor.MonitorMgr().verify_SLA.return_value = True
ret = {}
p.run(ret)
p.teardown()
-"""
- def test__serviceha_run_sla_error(self, mock_attacker, mock_monitor):
- p = serviceha.ServiceHA(self.args, self.ctx)
p.setup()
- self.assertEqual(p.setup_done, True)
+ self.assertTrue(p.setup_done)
- result = {}
- result["outage_time"] = 10
- mock_monitor.Monitor().get_result.return_value = result
+# def test__serviceha_run_sla_error(self, mock_attacker, mock_monitor):
+# p = serviceha.ServiceHA(self.args, self.ctx)
- ret = {}
- self.assertRaises(AssertionError, p.run, ret)
-"""
+# p.setup()
+# self.assertTrue(p.setup_done)
+#
+# result = {}
+# result["outage_time"] = 10
+# mock_monitor.Monitor().get_result.return_value = result
+
+# ret = {}
+# self.assertRaises(AssertionError, p.run, ret)
diff --git a/tests/unit/benchmark/scenarios/availability/test_util.py b/tests/unit/benchmark/scenarios/availability/test_util.py
index 0974f385a..548efe91b 100644
--- a/tests/unit/benchmark/scenarios/availability/test_util.py
+++ b/tests/unit/benchmark/scenarios/availability/test_util.py
@@ -16,36 +16,43 @@ import unittest
from yardstick.benchmark.scenarios.availability import util
-@mock.patch('yardstick.benchmark.scenarios.availability.util.subprocess')
+
class ExecuteShellTestCase(unittest.TestCase):
def setUp(self):
self.param_config = {'serviceName': '@serviceName', 'value': 1}
self.intermediate_variables = {'@serviceName': 'nova-api'}
self.std_output = '| id | 1 |'
- self.cmd_config = {'cmd':'ls','param':'-a'}
+ self.cmd_config = {'cmd': 'ls', 'param': '-a'}
+
+ self._mock_subprocess = mock.patch.object(util, 'subprocess')
+ self.mock_subprocess = self._mock_subprocess.start()
+ self.addCleanup(self._stop_mock)
+
+ def _stop_mock(self):
+ self._mock_subprocess.stop()
- def test_util_build_command_shell(self,mock_subprocess):
+ def test_util_build_command_shell(self):
result = util.build_shell_command(self.param_config, True,
self.intermediate_variables)
- self.assertEqual("nova-api" in result, True)
+ self.assertIn("nova-api", result)
- def test_read_stdout_item(self,mock_subprocess):
- result = util.read_stdout_item(self.std_output,'id')
- self.assertEquals('1',result)
+ def test_read_stdout_item(self):
+ result = util.read_stdout_item(self.std_output, 'id')
+ self.assertEqual('1', result)
- def test_buildshellparams(self,mock_subprocess):
- result = util.buildshellparams(self.cmd_config,True)
- self.assertEquals('/bin/bash -s {0} {1}', result)
+ def test_buildshellparams(self):
+ result = util.buildshellparams(self.cmd_config, True)
+ self.assertEqual('/bin/bash -s {0} {1}', result)
- def test__fun_execute_shell_command_successful(self, mock_subprocess):
+ def test__fun_execute_shell_command_successful(self):
cmd = "env"
- mock_subprocess.check_output.return_value = (0, 'unittest')
- exitcode, output = util.execute_shell_command(cmd)
+ self.mock_subprocess.check_output.return_value = (0, 'unittest')
+ exitcode, _ = util.execute_shell_command(cmd)
self.assertEqual(exitcode, 0)
- def test__fun_execute_shell_command_fail_cmd_exception(self, mock_subprocess):
+ def test__fun_execute_shell_command_fail_cmd_exception(self):
cmd = "env"
- mock_subprocess.check_output.side_effect = RuntimeError
- exitcode, output = util.execute_shell_command(cmd)
+ self.mock_subprocess.check_output.side_effect = RuntimeError
+ exitcode, _ = util.execute_shell_command(cmd)
self.assertEqual(exitcode, -1)