Merge "Add API(v2) to delete container"
[yardstick.git] / tests / unit / benchmark / scenarios / networking / test_sfc.py
index adce082..78c0352 100644 (file)
@@ -11,6 +11,7 @@
 
 # Unittest for yardstick.benchmark.scenarios.networking.sfc
 
+from __future__ import absolute_import
 import mock
 import unittest
 
@@ -20,32 +21,53 @@ from yardstick.benchmark.scenarios.networking import sfc
 class SfcTestCase(unittest.TestCase):
 
     def setUp(self):
-        scenario_cfg = dict()
-        context_cfg = dict()
-
-        # Used in Sfc.setup()
-        context_cfg['target'] = dict()
-        context_cfg['target']['user'] = 'root'
-        context_cfg['target']['password'] = 'octopus'
-        context_cfg['target']['ip'] = None
-
-        # Used in Sfc.run()
-        context_cfg['host'] = dict()
-        context_cfg['host']['user'] = 'cirros'
-        context_cfg['host']['password'] = 'cubslose:)'
-        context_cfg['host']['ip'] = None
-        context_cfg['target'] = dict()
-        context_cfg['target']['ip'] = None
+        scenario_cfg = {}
+        context_cfg = {
+            # Used in Sfc.setup()
+            'target': {
+                'user': 'root',
+                'password': 'opnfv',
+                'ip': '127.0.0.1',
+            },
+
+            # Used in Sfc.run()
+            'host': {
+                'user': 'root',
+                'password': 'opnfv',
+                'ip': None,
+            }
+        }
 
         self.sfc = sfc.Sfc(scenario_cfg=scenario_cfg, context_cfg=context_cfg)
 
     @mock.patch('yardstick.benchmark.scenarios.networking.sfc.ssh')
-    def test_run_for_success(self, mock_ssh):
+    @mock.patch('yardstick.benchmark.scenarios.networking.sfc.sfc_openstack')
+    @mock.patch('yardstick.benchmark.scenarios.networking.sfc.subprocess')
+    def test_run_for_success(self, mock_subprocess, mock_openstack, mock_ssh):
+        # Mock a successfull SSH in Sfc.setup() and Sfc.run()
+        mock_ssh.SSH.from_node().execute.return_value = (0, '100', '')
+        mock_openstack.get_an_IP.return_value = "127.0.0.1"
+        mock_subprocess.call.return_value = 'mocked!'
+
+        result = {}
+        self.sfc.setup()
+        self.sfc.run(result)
+        self.sfc.teardown()
+
+    @mock.patch('yardstick.benchmark.scenarios.networking.sfc.ssh')
+    @mock.patch('yardstick.benchmark.scenarios.networking.sfc.sfc_openstack')
+    @mock.patch('yardstick.benchmark.scenarios.networking.sfc.subprocess')
+    def test2_run_for_success(self, mock_subprocess, mock_openstack, mock_ssh):
         # Mock a successfull SSH in Sfc.setup() and Sfc.run()
-        mock_ssh.SSH().execute.return_value = (0, '100', '')
+        mock_ssh.SSH.from_node().execute.return_value = (
+            0, 'vxlan_tool.py', 'succeeded timed out')
+        mock_openstack.get_an_IP.return_value = "127.0.0.1"
+        mock_subprocess.call.return_value = 'mocked!'
 
         result = {}
+        self.sfc.setup()
         self.sfc.run(result)
+        self.sfc.teardown()
 
 
 def main():