l2pop UT: Simplify migration tests
"port2" is created but not used in the tests. Change-Id: Ib27d32063a2b5cecc707a6aece4e604cbfecefa7
This commit is contained in:
parent
a6af531339
commit
4791746f41
@ -800,109 +800,87 @@ class TestL2PopulationRpcTestCase(test_plugin.Ml2PluginV2TestCase):
|
||||
self._register_ml2_agents()
|
||||
with self.subnet(network=self._network) as subnet:
|
||||
host_arg = {portbindings.HOST_ID: L2_AGENT['host']}
|
||||
host2_arg = {portbindings.HOST_ID: L2_AGENT_2['host']}
|
||||
with self.port(subnet=subnet, cidr='10.0.0.0/24',
|
||||
device_owner=DEVICE_OWNER_COMPUTE,
|
||||
arg_list=(portbindings.HOST_ID,),
|
||||
**host_arg) as port1:
|
||||
with self.port(subnet=subnet, cidr='10.0.0.0/24',
|
||||
device_owner=DEVICE_OWNER_COMPUTE,
|
||||
arg_list=(portbindings.HOST_ID,),
|
||||
**host2_arg) as port2:
|
||||
p1 = port1['port']
|
||||
device1 = 'tap' + p1['id']
|
||||
self.callbacks.update_device_up(
|
||||
self.adminContext,
|
||||
agent_id=L2_AGENT['host'],
|
||||
device=device1)
|
||||
p2 = port2['port']
|
||||
device2 = 'tap' + p2['id']
|
||||
self.callbacks.update_device_up(
|
||||
self.adminContext,
|
||||
agent_id=L2_AGENT_2['host'],
|
||||
device=device2)
|
||||
data2 = {'port': {'binding:host_id': L2_AGENT_2['host']}}
|
||||
req = self.new_update_request('ports', data2, p1['id'])
|
||||
res = self.deserialize(self.fmt,
|
||||
req.get_response(self.api))
|
||||
self.assertEqual(res['port']['binding:host_id'],
|
||||
L2_AGENT_2['host'])
|
||||
self.mock_fanout.reset_mock()
|
||||
# NOTE(yamamoto): see bug #1441488
|
||||
self.adminContext.session.expire_all()
|
||||
self.callbacks.get_device_details(
|
||||
self.adminContext,
|
||||
device=device1,
|
||||
agent_id=L2_AGENT_2['host'])
|
||||
p1_ips = [p['ip_address'] for p in p1['fixed_ips']]
|
||||
expected = {p1['network_id']:
|
||||
{'ports':
|
||||
{'20.0.0.1': [constants.FLOODING_ENTRY,
|
||||
l2pop_rpc.PortInfo(
|
||||
p1['mac_address'],
|
||||
p1_ips[0])]},
|
||||
'network_type': 'vxlan',
|
||||
'segment_id': 1}}
|
||||
p1 = port1['port']
|
||||
device1 = 'tap' + p1['id']
|
||||
self.callbacks.update_device_up(
|
||||
self.adminContext,
|
||||
agent_id=L2_AGENT['host'],
|
||||
device=device1)
|
||||
data2 = {'port': {'binding:host_id': L2_AGENT_2['host']}}
|
||||
req = self.new_update_request('ports', data2, p1['id'])
|
||||
res = self.deserialize(self.fmt,
|
||||
req.get_response(self.api))
|
||||
self.assertEqual(res['port']['binding:host_id'],
|
||||
L2_AGENT_2['host'])
|
||||
self.mock_fanout.reset_mock()
|
||||
# NOTE(yamamoto): see bug #1441488
|
||||
self.adminContext.session.expire_all()
|
||||
self.callbacks.get_device_details(
|
||||
self.adminContext,
|
||||
device=device1,
|
||||
agent_id=L2_AGENT_2['host'])
|
||||
p1_ips = [p['ip_address'] for p in p1['fixed_ips']]
|
||||
expected = {p1['network_id']:
|
||||
{'ports':
|
||||
{'20.0.0.1': [constants.FLOODING_ENTRY,
|
||||
l2pop_rpc.PortInfo(
|
||||
p1['mac_address'],
|
||||
p1_ips[0])]},
|
||||
'network_type': 'vxlan',
|
||||
'segment_id': 1}}
|
||||
|
||||
self.mock_fanout.assert_called_with(
|
||||
mock.ANY, 'remove_fdb_entries', expected)
|
||||
self.mock_fanout.assert_called_with(
|
||||
mock.ANY, 'remove_fdb_entries', expected)
|
||||
|
||||
def test_host_changed_twice(self):
|
||||
self._register_ml2_agents()
|
||||
with self.subnet(network=self._network) as subnet:
|
||||
host_arg = {portbindings.HOST_ID: L2_AGENT['host']}
|
||||
host2_arg = {portbindings.HOST_ID: L2_AGENT_2['host']}
|
||||
with self.port(subnet=subnet, cidr='10.0.0.0/24',
|
||||
device_owner=DEVICE_OWNER_COMPUTE,
|
||||
arg_list=(portbindings.HOST_ID,),
|
||||
**host_arg) as port1:
|
||||
with self.port(subnet=subnet, cidr='10.0.0.0/24',
|
||||
device_owner=DEVICE_OWNER_COMPUTE,
|
||||
arg_list=(portbindings.HOST_ID,),
|
||||
**host2_arg) as port2:
|
||||
p1 = port1['port']
|
||||
device1 = 'tap' + p1['id']
|
||||
self.callbacks.update_device_up(
|
||||
self.adminContext,
|
||||
agent_id=L2_AGENT['host'],
|
||||
device=device1)
|
||||
p2 = port2['port']
|
||||
device2 = 'tap' + p2['id']
|
||||
self.callbacks.update_device_up(
|
||||
self.adminContext,
|
||||
agent_id=L2_AGENT_2['host'],
|
||||
device=device2)
|
||||
data2 = {'port': {'binding:host_id': L2_AGENT_2['host']}}
|
||||
req = self.new_update_request('ports', data2, p1['id'])
|
||||
res = self.deserialize(self.fmt,
|
||||
req.get_response(self.api))
|
||||
self.assertEqual(res['port']['binding:host_id'],
|
||||
L2_AGENT_2['host'])
|
||||
data4 = {'port': {'binding:host_id': L2_AGENT_4['host']}}
|
||||
req = self.new_update_request('ports', data4, p1['id'])
|
||||
res = self.deserialize(self.fmt,
|
||||
req.get_response(self.api))
|
||||
self.assertEqual(res['port']['binding:host_id'],
|
||||
L2_AGENT_4['host'])
|
||||
self.mock_fanout.reset_mock()
|
||||
# NOTE(yamamoto): see bug #1441488
|
||||
self.adminContext.session.expire_all()
|
||||
self.callbacks.get_device_details(
|
||||
self.adminContext,
|
||||
device=device1,
|
||||
agent_id=L2_AGENT_4['host'])
|
||||
p1_ips = [p['ip_address'] for p in p1['fixed_ips']]
|
||||
expected = {p1['network_id']:
|
||||
{'ports':
|
||||
{'20.0.0.1': [constants.FLOODING_ENTRY,
|
||||
l2pop_rpc.PortInfo(
|
||||
p1['mac_address'],
|
||||
p1_ips[0])]},
|
||||
'network_type': 'vxlan',
|
||||
'segment_id': 1}}
|
||||
p1 = port1['port']
|
||||
device1 = 'tap' + p1['id']
|
||||
self.callbacks.update_device_up(
|
||||
self.adminContext,
|
||||
agent_id=L2_AGENT['host'],
|
||||
device=device1)
|
||||
data2 = {'port': {'binding:host_id': L2_AGENT_2['host']}}
|
||||
req = self.new_update_request('ports', data2, p1['id'])
|
||||
res = self.deserialize(self.fmt,
|
||||
req.get_response(self.api))
|
||||
self.assertEqual(res['port']['binding:host_id'],
|
||||
L2_AGENT_2['host'])
|
||||
data4 = {'port': {'binding:host_id': L2_AGENT_4['host']}}
|
||||
req = self.new_update_request('ports', data4, p1['id'])
|
||||
res = self.deserialize(self.fmt,
|
||||
req.get_response(self.api))
|
||||
self.assertEqual(res['port']['binding:host_id'],
|
||||
L2_AGENT_4['host'])
|
||||
self.mock_fanout.reset_mock()
|
||||
# NOTE(yamamoto): see bug #1441488
|
||||
self.adminContext.session.expire_all()
|
||||
self.callbacks.get_device_details(
|
||||
self.adminContext,
|
||||
device=device1,
|
||||
agent_id=L2_AGENT_4['host'])
|
||||
p1_ips = [p['ip_address'] for p in p1['fixed_ips']]
|
||||
expected = {p1['network_id']:
|
||||
{'ports':
|
||||
{'20.0.0.1': [constants.FLOODING_ENTRY,
|
||||
l2pop_rpc.PortInfo(
|
||||
p1['mac_address'],
|
||||
p1_ips[0])]},
|
||||
'network_type': 'vxlan',
|
||||
'segment_id': 1}}
|
||||
|
||||
self.mock_fanout.assert_called_with(
|
||||
mock.ANY, 'remove_fdb_entries', expected)
|
||||
self.mock_fanout.assert_called_with(
|
||||
mock.ANY, 'remove_fdb_entries', expected)
|
||||
|
||||
def test_delete_port_invokes_update_device_down(self):
|
||||
l2pop_mech = l2pop_mech_driver.L2populationMechanismDriver()
|
||||
|
Loading…
Reference in New Issue
Block a user