Improve IXIA IxNetwork library and traffic profile (4)
[yardstick.git] / tests / unit / network_services / nfvi / test_resource.py
index f5f7f0f..741f9a6 100644 (file)
@@ -19,6 +19,8 @@ import unittest
 
 from yardstick.network_services.nfvi.resource import ResourceProfile
 from yardstick.network_services.nfvi import resource, collectd
+from yardstick.common.exceptions import ResourceCommandError
+from yardstick.common.exceptions import SSHError
 
 
 class TestResourceProfile(unittest.TestCase):
@@ -128,8 +130,31 @@ class TestResourceProfile(unittest.TestCase):
         self.assertEqual(val, ('error', 'Invalid', '', ''))
 
     def test__start_collectd(self):
-            self.assertIsNone(
-                self.resource_profile._start_collectd(self.ssh_mock, "/opt/nsb_bin"))
+        ssh_mock = mock.Mock()
+        ssh_mock.execute = mock.Mock(return_value=(0, "", ""))
+        self.assertIsNone(self.resource_profile._start_collectd(ssh_mock,
+                                                                "/opt/nsb_bin"))
+
+        ssh_mock.execute = mock.Mock(side_effect=SSHError)
+        with self.assertRaises(SSHError):
+            self.resource_profile._start_collectd(ssh_mock, "/opt/nsb_bin")
+
+        ssh_mock.execute = mock.Mock(return_value=(1, "", ""))
+        self.assertIsNone(self.resource_profile._start_collectd(ssh_mock,
+                                                                "/opt/nsb_bin"))
+
+    def test__start_rabbitmq(self):
+        ssh_mock = mock.Mock()
+        ssh_mock.execute = mock.Mock(return_value=(0, "RabbitMQ", ""))
+        self.assertIsNone(self.resource_profile._start_rabbitmq(ssh_mock))
+
+        ssh_mock.execute = mock.Mock(return_value=(0, "", ""))
+        with self.assertRaises(ResourceCommandError):
+            self.resource_profile._start_rabbitmq(ssh_mock)
+
+        ssh_mock.execute = mock.Mock(return_value=(1, "", ""))
+        with self.assertRaises(ResourceCommandError):
+            self.resource_profile._start_rabbitmq(ssh_mock)
 
     def test__prepare_collectd_conf(self):
             self.assertIsNone(
@@ -154,11 +179,12 @@ class TestResourceProfile(unittest.TestCase):
 
     def test_initiate_systemagent(self):
         self.resource_profile._start_collectd = mock.Mock()
+        self.resource_profile._start_rabbitmq = mock.Mock()
         self.assertIsNone(
             self.resource_profile.initiate_systemagent("/opt/nsb_bin"))
 
     def test_initiate_systemagent_raise(self):
-        self.resource_profile._start_collectd = mock.Mock(side_effect=RuntimeError)
+        self.resource_profile._start_rabbitmq = mock.Mock(side_effect=RuntimeError)
         with self.assertRaises(RuntimeError):
             self.resource_profile.initiate_systemagent("/opt/nsb_bin")