Check there are no min BW QoS in "BaseOVSTestCase"
This patche adds a check in "BaseOVSTestCase" setUp method. Each time a test is executed, the test case checks there are no minimum bandwidth QoS/queues related to this OVS instance. The OVS instance generates a random "_min_bw_qos_id" in the initialization. This ID is assigned to the OVS QoS registers, in "external_ids:id". Related-Bug: #1922919 Change-Id: I6955aadc51bfc9181ec84f7d54a219ffa3fd9115
This commit is contained in:
parent
8367d28621
commit
ecaa7a1b48
|
@ -56,6 +56,7 @@ class BaseOVSTestCase(base.BaseSudoTestCase):
|
|||
self.br_name = ('br-' + uuidutils.generate_uuid())[:10]
|
||||
self.port_id = ('port-' + uuidutils.generate_uuid())[:8]
|
||||
self.ovs = ovs_lib.OVSBridge(self.br_name)
|
||||
self._check_no_minbw_qos()
|
||||
self.elements_to_clean = {'bridges': [], 'devices': [],
|
||||
'qoses': [], 'queues': []}
|
||||
self.addCleanup(self._clean_system)
|
||||
|
@ -160,6 +161,25 @@ class BaseOVSTestCase(base.BaseSudoTestCase):
|
|||
self.fail('Expected value: %s, retrieved value: %s' %
|
||||
(expected_value, ret[0]))
|
||||
|
||||
def _check_no_minbw_qos(self):
|
||||
"""Asserts that there are no min BW qos/queues for this OVS instance"""
|
||||
qos_id, qos_queues = self.ovs._find_qos()
|
||||
if not qos_id and not qos_queues:
|
||||
return
|
||||
|
||||
qos = self.ovs._list_qos(_id=qos_id)
|
||||
ovs_queues = self.ovs._list_queues(
|
||||
_type=qos_constants.RULE_TYPE_MINIMUM_BANDWIDTH)
|
||||
queues = []
|
||||
queue_uuids = list(qos_queues.values())
|
||||
for ovs_queue in ovs_queues:
|
||||
if ovs_queue['_uuid'] in queue_uuids:
|
||||
queues.append(str(ovs_queue))
|
||||
|
||||
msg = ('There are QoS/queue registers\nQoS: %s\nqueues: %s' %
|
||||
(str(qos), queues))
|
||||
self.fail(msg)
|
||||
|
||||
def test__update_queue_new(self):
|
||||
queue_id, neutron_port_id = self._create_queue()
|
||||
self.assertIsNotNone(queue_id)
|
||||
|
|
Loading…
Reference in New Issue