tests: Handle missing extensions in network tests
This is mostly a case of skipping tests where the extension is missing, but some tests are updated to remove a reliance on optional tests. Change-Id: I25b8811fe09f2a4a9fc20ca5459f5a404b88a337 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
This commit is contained in:
@@ -47,6 +47,12 @@ class TestMeterRule(common.NetworkTests):
|
|||||||
finally:
|
finally:
|
||||||
super().tearDownClass()
|
super().tearDownClass()
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
super().setUp()
|
||||||
|
|
||||||
|
if not self.is_extension_enabled("metering"):
|
||||||
|
self.skipTest("No metering extension present")
|
||||||
|
|
||||||
def test_meter_rule_delete(self):
|
def test_meter_rule_delete(self):
|
||||||
"""test create, delete"""
|
"""test create, delete"""
|
||||||
json_output = self.openstack(
|
json_output = self.openstack(
|
||||||
|
@@ -18,7 +18,15 @@ import uuid
|
|||||||
from openstackclient.tests.functional.network.v2 import common
|
from openstackclient.tests.functional.network.v2 import common
|
||||||
|
|
||||||
|
|
||||||
class NetworkQosRuleTestsMinimumBandwidth(common.NetworkTests):
|
class NetworkQosTests(common.NetworkTests):
|
||||||
|
def setUp(self):
|
||||||
|
super().setUp()
|
||||||
|
|
||||||
|
if not self.is_extension_enabled("qos"):
|
||||||
|
self.skipTest("No qos extension present")
|
||||||
|
|
||||||
|
|
||||||
|
class NetworkQosRuleTestsMinimumBandwidth(NetworkQosTests):
|
||||||
"""Functional tests for QoS minimum bandwidth rule"""
|
"""Functional tests for QoS minimum bandwidth rule"""
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@@ -93,7 +101,7 @@ class NetworkQosRuleTestsMinimumBandwidth(common.NetworkTests):
|
|||||||
self.assertEqual(7500, cmd_output['min_kbps'])
|
self.assertEqual(7500, cmd_output['min_kbps'])
|
||||||
|
|
||||||
|
|
||||||
class NetworkQosRuleTestsMinimumPacketRate(common.NetworkTests):
|
class NetworkQosRuleTestsMinimumPacketRate(NetworkQosTests):
|
||||||
"""Functional tests for QoS minimum packet rate rule"""
|
"""Functional tests for QoS minimum packet rate rule"""
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@@ -169,7 +177,7 @@ class NetworkQosRuleTestsMinimumPacketRate(common.NetworkTests):
|
|||||||
self.assertEqual('any', cmd_output['direction'])
|
self.assertEqual('any', cmd_output['direction'])
|
||||||
|
|
||||||
|
|
||||||
class NetworkQosRuleTestsDSCPMarking(common.NetworkTests):
|
class NetworkQosRuleTestsDSCPMarking(NetworkQosTests):
|
||||||
"""Functional tests for QoS DSCP marking rule"""
|
"""Functional tests for QoS DSCP marking rule"""
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@@ -241,7 +249,7 @@ class NetworkQosRuleTestsDSCPMarking(common.NetworkTests):
|
|||||||
self.assertEqual(32, cmd_output['dscp_mark'])
|
self.assertEqual(32, cmd_output['dscp_mark'])
|
||||||
|
|
||||||
|
|
||||||
class NetworkQosRuleTestsBandwidthLimit(common.NetworkTests):
|
class NetworkQosRuleTestsBandwidthLimit(NetworkQosTests):
|
||||||
"""Functional tests for QoS bandwidth limit rule"""
|
"""Functional tests for QoS bandwidth limit rule"""
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
@@ -44,6 +44,12 @@ class NetworkSegmentTests(common.NetworkTests):
|
|||||||
finally:
|
finally:
|
||||||
super().tearDownClass()
|
super().tearDownClass()
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
super().setUp()
|
||||||
|
|
||||||
|
if not self.is_extension_enabled("segment"):
|
||||||
|
self.skipTest("No segment extension present")
|
||||||
|
|
||||||
def test_network_segment_create_delete(self):
|
def test_network_segment_create_delete(self):
|
||||||
name = uuid.uuid4().hex
|
name = uuid.uuid4().hex
|
||||||
json_output = self.openstack(
|
json_output = self.openstack(
|
||||||
@@ -110,12 +116,7 @@ class NetworkSegmentTests(common.NetworkTests):
|
|||||||
)
|
)
|
||||||
self.addCleanup(self.openstack, 'network segment delete ' + name)
|
self.addCleanup(self.openstack, 'network segment delete ' + name)
|
||||||
|
|
||||||
extension_output = self.openstack(
|
if self.is_extension_enabled('standard-attr-segment'):
|
||||||
"extension list ",
|
|
||||||
parse_output=True,
|
|
||||||
)
|
|
||||||
ext_alias = [x["Alias"] for x in extension_output]
|
|
||||||
if "standard-attr-segment" in ext_alias:
|
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
'',
|
'',
|
||||||
json_output["description"],
|
json_output["description"],
|
||||||
|
@@ -24,6 +24,9 @@ class NetworkTrunkTests(common.NetworkTests):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
|
|
||||||
|
if not self.is_extension_enabled("trunk"):
|
||||||
|
self.skipTest("No trunk extension present")
|
||||||
|
|
||||||
network_name = uuid.uuid4().hex
|
network_name = uuid.uuid4().hex
|
||||||
subnet_name = uuid.uuid4().hex
|
subnet_name = uuid.uuid4().hex
|
||||||
self.parent_port_name = uuid.uuid4().hex
|
self.parent_port_name = uuid.uuid4().hex
|
||||||
|
@@ -211,7 +211,6 @@ class SubnetTests(common.NetworkTagTests):
|
|||||||
+ ' --description bbbb '
|
+ ' --description bbbb '
|
||||||
+ '--no-dhcp '
|
+ '--no-dhcp '
|
||||||
+ '--gateway 10.10.11.1 '
|
+ '--gateway 10.10.11.1 '
|
||||||
+ '--service-type network:floatingip_agent_gateway '
|
|
||||||
+ name
|
+ name
|
||||||
)
|
)
|
||||||
self.assertOutput('', cmd_output)
|
self.assertOutput('', cmd_output)
|
||||||
@@ -236,27 +235,16 @@ class SubnetTests(common.NetworkTagTests):
|
|||||||
'10.10.11.1',
|
'10.10.11.1',
|
||||||
cmd_output["gateway_ip"],
|
cmd_output["gateway_ip"],
|
||||||
)
|
)
|
||||||
self.assertEqual(
|
|
||||||
['network:floatingip_agent_gateway'],
|
|
||||||
cmd_output["service_types"],
|
|
||||||
)
|
|
||||||
|
|
||||||
# Test unset
|
# Test unset
|
||||||
cmd_output = self.openstack(
|
cmd_output = self.openstack('subnet unset --gateway ' + new_name)
|
||||||
'subnet unset '
|
|
||||||
+ '--service-type network:floatingip_agent_gateway '
|
|
||||||
+ new_name
|
|
||||||
)
|
|
||||||
self.assertOutput('', cmd_output)
|
self.assertOutput('', cmd_output)
|
||||||
|
|
||||||
cmd_output = self.openstack(
|
cmd_output = self.openstack(
|
||||||
'subnet show ' + new_name,
|
'subnet show ' + new_name,
|
||||||
parse_output=True,
|
parse_output=True,
|
||||||
)
|
)
|
||||||
self.assertEqual(
|
self.assertIsNone(cmd_output["gateway_ip"])
|
||||||
[],
|
|
||||||
cmd_output["service_types"],
|
|
||||||
)
|
|
||||||
|
|
||||||
def _subnet_create(self, cmd, name, is_type_ipv4=True):
|
def _subnet_create(self, cmd, name, is_type_ipv4=True):
|
||||||
# Try random subnet range for subnet creating
|
# Try random subnet range for subnet creating
|
||||||
|
Reference in New Issue
Block a user