libvirt: exercise vif driver 'plug' method in tests
The VIF tests currently directly call the VIF type specific plug_xxx and unplug_xxx methods. Switch the tests to call the generic plug / unplug methods so that the tests exercise the dispatch code too. Change-Id: I0f6c74fece5fe71a704bfc9ac66d810dbf9068ca
This commit is contained in:
committed by
Sergey Belous
parent
b5e65b4356
commit
6896e72a8f
@@ -690,7 +690,7 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
with mock.patch.object(linux_net, 'delete_ivs_vif_port') as delete:
|
||||
delete.side_effect = processutils.ProcessExecutionError
|
||||
d.unplug_ivs_ethernet(None, self.vif_ovs)
|
||||
d.unplug(None, self.vif_ovs)
|
||||
|
||||
def _test_plug_ovs_hybrid(self, ipv6_exists):
|
||||
calls = {
|
||||
@@ -736,7 +736,7 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
) as (device_exists, execute, _create_veth_pair, create_ovs_vif_port,
|
||||
path_exists):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.plug_ovs_hybrid(self.instance, self.vif_ovs)
|
||||
d.plug(self.instance, self.vif_ovs)
|
||||
device_exists.assert_has_calls(calls['device_exists'])
|
||||
_create_veth_pair.assert_has_calls(calls['_create_veth_pair'])
|
||||
execute.assert_has_calls(calls['execute'])
|
||||
@@ -766,7 +766,7 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
mock.patch.object(linux_net, 'delete_ovs_vif_port')
|
||||
) as (device_exists, execute, delete_ovs_vif_port):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.unplug_ovs_hybrid(None, self.vif_ovs)
|
||||
d.unplug(None, self.vif_ovs)
|
||||
device_exists.assert_has_calls(calls['device_exists'])
|
||||
execute.assert_has_calls(calls['execute'])
|
||||
delete_ovs_vif_port.assert_has_calls(calls['delete_ovs_vif_port'])
|
||||
@@ -805,12 +805,12 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
def test_plug_hw_veb(self):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
self._test_hw_veb_op(
|
||||
d.plug_hw_veb,
|
||||
d.plug,
|
||||
self.vif_hw_veb_macvtap['details'][network_model.VIF_DETAILS_VLAN])
|
||||
|
||||
def test_unplug_hw_veb(self):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
self._test_hw_veb_op(d.unplug_hw_veb, 0)
|
||||
self._test_hw_veb_op(d.unplug, 0)
|
||||
|
||||
def test_unplug_ovs_hybrid_bridge_does_not_exist(self):
|
||||
calls = {
|
||||
@@ -823,7 +823,7 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
mock.patch.object(linux_net, 'delete_ovs_vif_port')
|
||||
) as (device_exists, delete_ovs_vif_port):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.unplug_ovs_hybrid(None, self.vif_ovs)
|
||||
d.unplug(None, self.vif_ovs)
|
||||
device_exists.assert_has_calls(calls['device_exists'])
|
||||
delete_ovs_vif_port.assert_has_calls(calls['delete_ovs_vif_port'])
|
||||
|
||||
@@ -865,7 +865,7 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
) as (device_exists, execute, _create_veth_pair, create_ivs_vif_port,
|
||||
path_exists):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.plug_ivs_hybrid(self.instance, self.vif_ivs)
|
||||
d.plug(self.instance, self.vif_ivs)
|
||||
device_exists.assert_has_calls(calls['device_exists'])
|
||||
_create_veth_pair.assert_has_calls(calls['_create_veth_pair'])
|
||||
execute.assert_has_calls(calls['execute'])
|
||||
@@ -886,7 +886,7 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
mock.patch.object(linux_net, 'delete_ivs_vif_port')
|
||||
) as (execute, delete_ivs_vif_port):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.unplug_ivs_hybrid(None, self.vif_ivs)
|
||||
d.unplug(None, self.vif_ivs)
|
||||
execute.assert_has_calls(calls['execute'])
|
||||
delete_ivs_vif_port.assert_has_calls(calls['delete_ivs_vif_port'])
|
||||
|
||||
@@ -894,18 +894,13 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
with mock.patch.object(utils, 'execute') as execute:
|
||||
execute.side_effect = processutils.ProcessExecutionError
|
||||
d.unplug_ivs_hybrid(None, self.vif_ivs)
|
||||
d.unplug(None, self.vif_ivs)
|
||||
|
||||
def test_unplug_iovisor(self):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
with mock.patch.object(utils, 'execute') as execute:
|
||||
execute.side_effect = processutils.ProcessExecutionError
|
||||
mynetwork = network_model.Network(id='network-id-xxx-yyy-zzz',
|
||||
label='mylabel')
|
||||
myvif = network_model.VIF(id='vif-xxx-yyy-zzz',
|
||||
address='ca:fe:de:ad:be:ef',
|
||||
network=mynetwork)
|
||||
d.unplug_iovisor(None, myvif)
|
||||
d.unplug(None, self.vif_ivs)
|
||||
|
||||
@mock.patch('nova.network.linux_net.device_exists')
|
||||
def test_plug_iovisor(self, device_exists):
|
||||
@@ -916,12 +911,12 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
instance = objects.Instance(id=1,
|
||||
uuid='f0000000-0000-0000-0000-000000000001',
|
||||
project_id='myproject')
|
||||
d.plug_iovisor(instance, self.vif_ivs)
|
||||
d.plug(instance, self.vif_ivs)
|
||||
|
||||
def test_unplug_vrouter_with_details(self):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
with mock.patch.object(utils, 'execute') as execute:
|
||||
d.unplug_vrouter(None, self.vif_vrouter)
|
||||
d.unplug(None, self.vif_vrouter)
|
||||
execute.assert_called_once_with(
|
||||
'vrouter-port-control',
|
||||
'--oper=delete --uuid=vif-xxx-yyy-zzz',
|
||||
@@ -935,7 +930,7 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
instance.project_id = 'b168ea26fa0c49c1a84e1566d9565fa5'
|
||||
instance.display_name = 'instance1'
|
||||
with mock.patch.object(utils, 'execute') as execute:
|
||||
d.plug_vrouter(instance, self.vif_vrouter)
|
||||
d.plug(instance, self.vif_vrouter)
|
||||
execute.assert_has_calls([
|
||||
mock.call('ip', 'tuntap', 'add', 'tap-xxx-yyy-zzz', 'mode',
|
||||
'tap', run_as_root=True, check_exit_code=[0, 2, 254]),
|
||||
@@ -1097,11 +1092,11 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
def test_plug_tap(self, device_exists):
|
||||
device_exists.return_value = True
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.plug_tap(None, self.vif_tap)
|
||||
d.plug(None, self.vif_tap)
|
||||
|
||||
def test_unplug_tap(self):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.unplug_tap(None, self.vif_tap)
|
||||
d.unplug(None, self.vif_tap)
|
||||
|
||||
def test_generic_8021qbh_driver(self):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
@@ -1182,14 +1177,14 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
@mock.patch.object(linux_net.LinuxBridgeInterfaceDriver, 'ensure_vlan')
|
||||
def test_macvtap_plug_vlan(self, ensure_vlan_mock):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.plug_macvtap(self.instance, self.vif_macvtap_vlan)
|
||||
d.plug(self.instance, self.vif_macvtap_vlan)
|
||||
ensure_vlan_mock.assert_called_once_with('1', 'eth0',
|
||||
interface='eth0.1')
|
||||
|
||||
@mock.patch.object(linux_net.LinuxBridgeInterfaceDriver, 'ensure_vlan')
|
||||
def test_macvtap_plug_flat(self, ensure_vlan_mock):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.plug_macvtap(self.instance, self.vif_macvtap_flat)
|
||||
d.plug(self.instance, self.vif_macvtap_flat)
|
||||
self.assertFalse(ensure_vlan_mock.called)
|
||||
|
||||
def test_generic_iovisor_driver(self):
|
||||
@@ -1300,14 +1295,14 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
@mock.patch.object(linux_net, 'create_fp_dev')
|
||||
def test_vhostuser_fp_plug(self, mock_create_fp_dev):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.plug_vhostuser(self.instance, self.vif_vhostuser_fp)
|
||||
d.plug(self.instance, self.vif_vhostuser_fp)
|
||||
mock_create_fp_dev.assert_has_calls(
|
||||
[mock.call('tap-xxx-yyy-zzz', '/tmp/usv-xxx-yyy-zzz', 'client')])
|
||||
|
||||
@mock.patch.object(linux_net, 'delete_fp_dev')
|
||||
def test_vhostuser_fp_unplug(self, mock_delete_fp_dev):
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.unplug_vhostuser(None, self.vif_vhostuser_fp)
|
||||
d.unplug(None, self.vif_vhostuser_fp)
|
||||
mock_delete_fp_dev.assert_has_calls([mock.call('tap-xxx-yyy-zzz')])
|
||||
|
||||
def test_vhostuser_ovs_plug(self):
|
||||
@@ -1324,7 +1319,7 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
with mock.patch.object(linux_net,
|
||||
'create_ovs_vif_port') as create_ovs_vif_port:
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.plug_vhostuser(self.instance, self.vif_vhostuser_ovs)
|
||||
d.plug(self.instance, self.vif_vhostuser_ovs)
|
||||
create_ovs_vif_port.assert_has_calls(calls['create_ovs_vif_port'])
|
||||
|
||||
def test_vhostuser_ovs_unplug(self):
|
||||
@@ -1334,7 +1329,7 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
||||
with mock.patch.object(linux_net,
|
||||
'delete_ovs_vif_port') as delete_port:
|
||||
d = vif.LibvirtGenericVIFDriver()
|
||||
d.unplug_vhostuser(None, self.vif_vhostuser_ovs)
|
||||
d.unplug(None, self.vif_vhostuser_ovs)
|
||||
delete_port.assert_has_calls(calls['delete_ovs_vif_port'])
|
||||
|
||||
def test_vhostuser_ovs_fp_plug(self):
|
||||
|
||||
Reference in New Issue
Block a user