]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
De-duplicate unit tests for ports in Big Switch
authorKevin Benton <blak111@gmail.com>
Thu, 20 Mar 2014 14:24:33 +0000 (07:24 -0700)
committerKevin Benton <blak111@gmail.com>
Thu, 20 Mar 2014 14:34:14 +0000 (07:34 -0700)
This eliminates the separate classes that existed
for the VIF type testing. Each class was going
through all of the port tests when none of the
logic those tests were exercising was affected by
the VIF types.

This cut the number of tests run in test_restproxy_plugin
by close to 44% without a reduction in code coverage.

Closes-Bug: #1295448
Change-Id: I8c84e1599568fad36b6dd3d51e4ba8a3c012c6c5

neutron/tests/unit/bigswitch/test_restproxy_plugin.py

index 96141c5a36968862f76e8aa33be28c7a4415b1d8..78e34d7a6202a29542924df92865f7e595cbc0ae 100644 (file)
@@ -174,48 +174,14 @@ class TestBigSwitchProxyPortsV2(test_plugin.TestPortsV2,
         mock_send_all.assert_has_calls([call])
         self.spawn_p.start()
 
-
-class TestBigSwitchProxyPortsV2IVS(test_plugin.TestPortsV2,
-                                   BigSwitchProxyPluginV2TestCase,
-                                   test_bindings.PortBindingsTestCase):
-    VIF_TYPE = portbindings.VIF_TYPE_IVS
-    HAS_PORT_FILTER = False
-
-    def setUp(self):
-        super(TestBigSwitchProxyPortsV2IVS,
-              self).setUp()
-        cfg.CONF.set_override('vif_type', 'ivs', 'NOVA')
-
-
-class TestNoHostIDVIFOverride(test_plugin.TestPortsV2,
-                              BigSwitchProxyPluginV2TestCase,
-                              test_bindings.PortBindingsTestCase):
-    VIF_TYPE = portbindings.VIF_TYPE_OVS
-    HAS_PORT_FILTER = False
-
-    def setUp(self):
-        super(TestNoHostIDVIFOverride, self).setUp()
-        cfg.CONF.set_override('vif_type', 'ovs', 'NOVA')
-
-    def test_port_vif_details(self):
+    def test_port_vif_details_default(self):
         kwargs = {'name': 'name', 'device_id': 'override_dev'}
         with self.port(**kwargs) as port:
             self.assertEqual(port['port']['binding:vif_type'],
                              portbindings.VIF_TYPE_OVS)
 
-
-class TestBigSwitchVIFOverride(test_plugin.TestPortsV2,
-                               BigSwitchProxyPluginV2TestCase,
-                               test_bindings.PortBindingsTestCase):
-    VIF_TYPE = portbindings.VIF_TYPE_OVS
-    HAS_PORT_FILTER = False
-
-    def setUp(self):
-        super(TestBigSwitchVIFOverride,
-              self).setUp()
-        cfg.CONF.set_override('vif_type', 'ovs', 'NOVA')
-
-    def test_port_vif_details(self):
+    def test_port_vif_details_override(self):
+        # ivshost is in the test config to override to IVS
         kwargs = {'name': 'name', 'binding:host_id': 'ivshost',
                   'device_id': 'override_dev'}
         with self.port(**kwargs) as port:
@@ -227,6 +193,7 @@ class TestBigSwitchVIFOverride(test_plugin.TestPortsV2,
             self.assertEqual(port['port']['binding:vif_type'], self.VIF_TYPE)
 
     def test_port_move(self):
+        # ivshost is in the test config to override to IVS
         kwargs = {'name': 'name', 'binding:host_id': 'ivshost',
                   'device_id': 'override_dev'}
         with self.port(**kwargs) as port:
@@ -249,6 +216,17 @@ class TestBigSwitchVIFOverride(test_plugin.TestPortsV2,
         return self.deserialize(fmt, res)
 
 
+class TestVifDifferentDefault(BigSwitchProxyPluginV2TestCase):
+
+    def setup_config_files(self):
+        super(TestVifDifferentDefault, self).setup_config_files()
+        cfg.CONF.set_override('vif_type', 'ivs', 'NOVA')
+
+    def test_default_viftype(self):
+        with self.port() as port:
+            self.assertEqual(port['port']['binding:vif_type'], 'ivs')
+
+
 class TestBigSwitchProxyNetworksV2(test_plugin.TestNetworksV2,
                                    BigSwitchProxyPluginV2TestCase):