From 2c95d4fca0fde4a1bb4e9048b768e000bbed399d Mon Sep 17 00:00:00 2001 From: Assaf Muller Date: Tue, 1 Dec 2015 20:53:16 -0500 Subject: [PATCH] Clean up FIP namespace in DVR functional tests * Added FIP namespace cleanup to DVR router creation. * The tests weren't actually verifying that the FIP namespace was being deleted. Change-Id: I67287d397614ab368e940233c61738e0d77fbb2b Closes-Bug: #1521820 --- .../tests/functional/agent/l3/test_dvr_router.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/neutron/tests/functional/agent/l3/test_dvr_router.py b/neutron/tests/functional/agent/l3/test_dvr_router.py index 1cdb84bbd..3ade35cc1 100644 --- a/neutron/tests/functional/agent/l3/test_dvr_router.py +++ b/neutron/tests/functional/agent/l3/test_dvr_router.py @@ -19,6 +19,7 @@ import mock import netaddr from neutron.agent.l3 import agent as neutron_l3_agent +from neutron.agent.l3 import dvr_fip_ns from neutron.agent.l3 import dvr_snat_ns from neutron.agent.l3 import namespaces from neutron.agent.linux import ip_lib @@ -33,6 +34,18 @@ DEVICE_OWNER_COMPUTE = l3_constants.DEVICE_OWNER_COMPUTE_PREFIX + 'fake' class TestDvrRouter(framework.L3AgentTestFramework): + def manage_router(self, agent, router): + def _safe_fipnamespace_delete_on_ext_net(ext_net_id): + try: + agent.fipnamespace_delete_on_ext_net(None, ext_net_id) + except RuntimeError: + pass + self.addCleanup( + _safe_fipnamespace_delete_on_ext_net, + router['gw_port']['network_id']) + + return super(TestDvrRouter, self).manage_router(agent, router) + def test_dvr_router_lifecycle_without_ha_without_snat_with_fips(self): self._dvr_router_lifecycle(enable_ha=False, enable_snat=False) @@ -635,3 +648,5 @@ class TestDvrRouter(framework.L3AgentTestFramework): self.agent.fipnamespace_delete_on_ext_net( self.agent.context, ext_net_id) self._assert_interfaces_deleted_from_ovs() + fip_ns_name = dvr_fip_ns.FipNamespace._get_ns_name(ext_net_id) + self.assertFalse(self._namespace_exists(fip_ns_name)) -- 2.45.2