summaryrefslogtreecommitdiffstats
path: root/test/vpp_qos.py
diff options
context:
space:
mode:
authorNeale Ranns <nranns@cisco.com>2019-07-31 02:48:02 -0700
committerNeale Ranns <nranns@cisco.com>2019-07-31 16:17:36 +0000
commit83832e7ced8be8b7de394415feaba70c32e3c38d (patch)
treeb9269e9f5cff694fa39cc26b5c25cb81828e1435 /test/vpp_qos.py
parentb504777e7f1c9728e65b874284b4dfd39359c8a8 (diff)
qos: Store function
Type: feature store: write a QoS value into the buffer meta-data record: Extract a QoS value from a packet header and store it. mark: Make a change to the content of a packet header by writing a stored QoS value Change-Id: I07d1e87dd1ca90d40ac1ae1774fee1b272cab83f Signed-off-by: Neale Ranns <nranns@cisco.com>
Diffstat (limited to 'test/vpp_qos.py')
-rw-r--r--test/vpp_qos.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/test/vpp_qos.py b/test/vpp_qos.py
index 0577863ef8c..a7fa9e748aa 100644
--- a/test/vpp_qos.py
+++ b/test/vpp_qos.py
@@ -42,6 +42,44 @@ class VppQosRecord(VppObject):
return ("qos-record-%s-%d" % (self.intf, self.source))
+class VppQosStore(VppObject):
+ """ QoS Store(ing) configuration """
+
+ def __init__(self, test, intf, source, value):
+ self._test = test
+ self.intf = intf
+ self.source = source
+ self.value = value
+
+ def add_vpp_config(self):
+ self._test.vapi.qos_store_enable_disable(
+ enable=1,
+ store={'sw_if_index': self.intf.sw_if_index,
+ 'input_source': self.source,
+ 'value': self.value})
+ self._test.registry.register(self, self._test.logger)
+ return self
+
+ def remove_vpp_config(self):
+ self._test.vapi.qos_store_enable_disable(
+ enable=0,
+ store={'sw_if_index': self.intf.sw_if_index,
+ 'input_source': self.source})
+
+ def query_vpp_config(self):
+ rs = self._test.vapi.qos_store_dump()
+
+ for r in rs:
+ if self.intf.sw_if_index == r.store.sw_if_index and \
+ self.source == r.store.input_source and \
+ self.value == r.store.value:
+ return True
+ return False
+
+ def object_id(self):
+ return ("qos-store-%s-%d" % (self.intf, self.source))
+
+
class VppQosEgressMap(VppObject):
""" QoS Egress Map(ping) configuration """