From a63ad187e97875da41fab4a3cfb05dd89a8998cc Mon Sep 17 00:00:00 2001 From: Kevin Benton Date: Thu, 20 Mar 2014 07:24:33 -0700 Subject: [PATCH] De-duplicate unit tests for ports in Big Switch 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 --- .../unit/bigswitch/test_restproxy_plugin.py | 52 ++++++------------- 1 file changed, 15 insertions(+), 37 deletions(-) diff --git a/neutron/tests/unit/bigswitch/test_restproxy_plugin.py b/neutron/tests/unit/bigswitch/test_restproxy_plugin.py index 96141c5a36..78e34d7a62 100644 --- a/neutron/tests/unit/bigswitch/test_restproxy_plugin.py +++ b/neutron/tests/unit/bigswitch/test_restproxy_plugin.py @@ -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):