diff --git a/neutronclient/tests/functional/adv-svcs/test_readonly_neutron_fwaas.py b/neutronclient/tests/functional/adv-svcs/test_readonly_neutron_fwaas.py index a3e2573f4..9cec62571 100644 --- a/neutronclient/tests/functional/adv-svcs/test_readonly_neutron_fwaas.py +++ b/neutronclient/tests/functional/adv-svcs/test_readonly_neutron_fwaas.py @@ -13,10 +13,15 @@ from neutronclient.tests.functional import base -class SimpleReadOnlyNeutronClientTest(base.ClientTestBase): +class SimpleReadOnlyNeutronFwv1ClientTest(base.ClientTestBase): """Tests for FWaaS v1 based client commands that are read only""" + def setUp(self): + super(SimpleReadOnlyNeutronFwv1ClientTest, self).setUp() + if not self.is_extension_enabled('fwaas'): + self.skipTest('FWaaS is not enabled') + def test_neutron_firewall_list(self): firewall_list = self.parser.listing(self.neutron ('firewall-list')) diff --git a/neutronclient/tests/functional/adv-svcs/test_readonly_neutron_vpn.py b/neutronclient/tests/functional/adv-svcs/test_readonly_neutron_vpn.py index 291e59ad7..6e3b6cdcb 100644 --- a/neutronclient/tests/functional/adv-svcs/test_readonly_neutron_vpn.py +++ b/neutronclient/tests/functional/adv-svcs/test_readonly_neutron_vpn.py @@ -25,6 +25,10 @@ class SimpleReadOnlyNeutronVpnClientTest(base.ClientTestBase): * with and without optional parameters * initially just check return codes, and later test command outputs """ + def setUp(self): + super(SimpleReadOnlyNeutronVpnClientTest, self).setUp() + if not self.is_extension_enabled('vpnaas'): + self.skipTest('VPNaaS is not enabled') def test_neutron_vpn_ikepolicy_list(self): ikepolicy = self.parser.listing(self.neutron('vpn-ikepolicy-list')) diff --git a/neutronclient/tests/functional/base.py b/neutronclient/tests/functional/base.py index b0c672f89..8233b1fde 100644 --- a/neutronclient/tests/functional/base.py +++ b/neutronclient/tests/functional/base.py @@ -72,3 +72,10 @@ class ClientTestBase(base.ClientTestBase): self._non_admin_clients = self._get_clients_from_os_cloud_config( cloud='devstack') return self._non_admin_clients.neutron(*args, **kwargs) + + def is_extension_enabled(self, extension_alias): + extensions = self.parser.listing(self.neutron('ext-list')) + for extension in extensions: + if extension_alias in extension['alias']: + return True + return False diff --git a/neutronclient/tests/functional/hooks/gate_hook.sh b/neutronclient/tests/functional/hooks/gate_hook.sh index e0dd841dd..e34a6c802 100755 --- a/neutronclient/tests/functional/hooks/gate_hook.sh +++ b/neutronclient/tests/functional/hooks/gate_hook.sh @@ -22,7 +22,6 @@ ${config} if [ "$VENV" == "functional-adv-svcs" ] then load_rc_hook fwaas - load_rc_hook vpnaas fi $BASE/new/devstack-gate/devstack-vm-gate.sh