fix sriov/ovs-dpdk unittests on systems with fewer than 10 cores 35/38135/1
authorRoss Brattain <ross.b.brattain@intel.com>
Wed, 26 Jul 2017 07:58:29 +0000 (00:58 -0700)
committerRoss Brattain <ross.b.brattain@intel.com>
Wed, 26 Jul 2017 07:59:56 +0000 (00:59 -0700)
we need to wrap vcpupin modulo number of cores.

also mock time.sleep

Change-Id: I6433418a99505b469c61c81a9a023d84434fa0ee
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
tests/unit/benchmark/contexts/test_ovsdpdk.py
tests/unit/benchmark/contexts/test_sriov.py
yardstick/benchmark/contexts/ovsdpdk.py
yardstick/benchmark/contexts/sriov.py

index 125e475..ac25ec8 100644 (file)
@@ -18,7 +18,6 @@ import mock
 import unittest
 
 from yardstick.benchmark.contexts import ovsdpdk
-from yardstick.benchmark.contexts.ovsdpdk import Ovsdpdk
 
 NIC_INPUT = {
     'interface': {},
@@ -227,10 +226,8 @@ class OvsdpdkTestCase(unittest.TestCase):
             mock_ovs = mock.Mock()
             ssh_mock.put = mock.Mock()
             ovs_obj.check_output = mock.Mock(return_value=(0, "vm1"))
-            self.assertIsNone(ovs_obj.setup_ovs_context(
-                PCIS,
-                NIC_DETAILS,
-                DRIVER))
+            with mock.patch("yardstick.benchmark.contexts.ovsdpdk.time"):
+                self.assertIsNone(ovs_obj.setup_ovs_context(PCIS, NIC_DETAILS, DRIVER))
 
     @mock.patch(
         'yardstick.benchmark.contexts.ovsdpdk',
index e4d8f5e..a8641a2 100644 (file)
@@ -185,8 +185,8 @@ class SriovTestCase(unittest.TestCase):
                 nic_details['vf_pci'][i] = sriov_obj.get_vf_datas.return_value
                 vf_pci = [[], []]
                 vf_pci[i] = sriov_obj.get_vf_datas.return_value
-            self.assertIsNotNone(
-                sriov_obj.configure_nics_for_sriov(DRIVER, NIC_DETAILS))
+            with mock.patch("yardstick.benchmark.contexts.sriov.time"):
+                self.assertIsNotNone(sriov_obj.configure_nics_for_sriov(DRIVER, NIC_DETAILS))
 
     def test_setup_sriov_context(self):
         with mock.patch("yardstick.ssh.SSH") as ssh:
@@ -224,8 +224,8 @@ class SriovTestCase(unittest.TestCase):
                 mock.Mock(return_value=(0, {}, ""))
             ssh_mock.put = mock.Mock()
             sriov_obj.check_output = mock.Mock(return_value=(1, {}))
-            self.assertIsNone(
-                sriov_obj.setup_sriov_context(PCIS, nic_details, DRIVER))
+            with mock.patch("yardstick.benchmark.contexts.sriov.time"):
+                self.assertIsNone(sriov_obj.setup_sriov_context(PCIS, nic_details, DRIVER))
 
     def test_setup_sriov_context_vm_already_present(self):
         with mock.patch("yardstick.ssh.SSH") as ssh:
@@ -263,10 +263,8 @@ class SriovTestCase(unittest.TestCase):
                 mock.Mock(return_value=(0, {}, ""))
             ssh_mock.put = mock.Mock()
             sriov_obj.check_output = mock.Mock(return_value=(0, "vm1"))
-            self.assertIsNone(sriov_obj.setup_sriov_context(
-                PCIS,
-                nic_details,
-                DRIVER))
+            with mock.patch("yardstick.benchmark.contexts.sriov.time"):
+                self.assertIsNone(sriov_obj.setup_sriov_context(PCIS, nic_details, DRIVER))
 
     @mock.patch(
         'yardstick.benchmark.contexts.sriov',
index 8661030..cf5529d 100644 (file)
@@ -329,7 +329,7 @@ class Ovsdpdk(StandaloneContext):
         for i in range(0, 10):
             self.connection.execute(
                 "virsh vcpupin vm1 {0} {1}".format(
-                    i, nodes[str(num_nodes - 1)][i]))
+                    i, nodes[str(num_nodes - 1)][i % len(nodes[str(num_nodes - 1)])]))
 
     def get_numa_nodes(self):
         nodes_sysfs = glob.iglob("/sys/devices/system/node/node*")
index da143cc..fe27d25 100644 (file)
@@ -392,7 +392,7 @@ class Sriov(StandaloneContext):
         for i in range(0, 10):
             self.connection.execute(
                 "virsh vcpupin vm1 {0} {1}".format(
-                    i, nodes[str(num_nodes - 1)][i]))
+                    i, nodes[str(num_nodes - 1)][i % len(nodes[str(num_nodes - 1)])]))
 
     def get_numa_nodes(self):
         nodes_sysfs = glob.iglob("/sys/devices/system/node/node*")