Merge "Big Switch: Send notification after port update"
This commit is contained in:
commit
d28a54e7a2
@ -787,11 +787,14 @@ class NeutronRestProxyV2(NeutronRestProxyV2Base,
|
||||
self.servers.rest_update_port(net_tenant_id,
|
||||
new_port["network_id"],
|
||||
mapped_port)
|
||||
agent_update_required = self.update_security_group_on_port(
|
||||
need_port_update_notify = self.update_security_group_on_port(
|
||||
context, port_id, port, orig_port, new_port)
|
||||
agent_update_required |= self.is_security_group_member_updated(
|
||||
need_port_update_notify |= self.is_security_group_member_updated(
|
||||
context, orig_port, new_port)
|
||||
|
||||
if need_port_update_notify:
|
||||
self.notifier.port_update(context, new_port)
|
||||
|
||||
# return new_port
|
||||
return new_port
|
||||
|
||||
|
@ -294,6 +294,20 @@ class TestBigSwitchProxyNetworksV2(test_plugin.TestNetworksV2,
|
||||
self._get_networks(n['network']['tenant_id']
|
||||
)[0]['id'])
|
||||
|
||||
def test_notify_on_security_group_change(self):
|
||||
plugin = manager.NeutronManager.get_plugin()
|
||||
with self.port() as p:
|
||||
with contextlib.nested(
|
||||
mock.patch.object(plugin, 'notifier'),
|
||||
mock.patch.object(plugin, 'is_security_group_member_updated',
|
||||
return_value=True)
|
||||
) as (n_mock, s_mock):
|
||||
# any port update should trigger a notification due to s_mock
|
||||
data = {'port': {'name': 'aNewName'}}
|
||||
self.new_update_request(
|
||||
'ports', data, p['port']['id']).get_response(self.api)
|
||||
self.assertTrue(n_mock.port_update.called)
|
||||
|
||||
|
||||
class TestBigSwitchProxySubnetsV2(test_plugin.TestSubnetsV2,
|
||||
BigSwitchProxyPluginV2TestCase):
|
||||
|
Loading…
Reference in New Issue
Block a user