[v1] tests/rte_flow_common: optimize scripts

Message ID 20221028142202.28341-1-songx.jiale@intel.com (mailing list archive)
State Superseded
Headers
Series [v1] tests/rte_flow_common: optimize scripts |

Checks

Context Check Description
ci/Intel-dts-format-test success Testing OK
ci/Intel-dts-pylama-test success Testing OK
ci/Intel-dts-suite-test fail Testing issues

Commit Message

Jiale, SongX Oct. 28, 2022, 2:22 p.m. UTC
  some packages that mismatch the rule do not have hash values. 
add a parameter "check_hash_num" to determine whether to detect the number of hash values.

Signed-off-by: Song Jiale <songx.jiale@intel.com>
---
 tests/rte_flow_common.py | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
  

Patch

diff --git a/tests/rte_flow_common.py b/tests/rte_flow_common.py
index 02c85f85..4d36c9a5 100644
--- a/tests/rte_flow_common.py
+++ b/tests/rte_flow_common.py
@@ -346,7 +346,7 @@  def verify(passed, description):
         raise AssertionError(description)
 
 
-def check_rss(out, pkt_num, check_param, stats=True):
+def check_rss(out, pkt_num, check_param, stats=True, check_hash_num=True):
     """
     check whether the packet directed by rss or not according to the specified parameters
     :param out: information received by testpmd after sending packets and port statistics
@@ -359,7 +359,8 @@  def check_rss(out, pkt_num, check_param, stats=True):
     rxq = check_param.get("rxq")
     p = re.compile("RSS\shash=(\w+)\s-\sRSS\squeue=(\w+)")
     pkt_info = p.findall(out)
-    verify(len(pkt_info) == pkt_num, "some packets no hash:{}".format(p.pattern))
+    if check_hash_num:
+        verify(len(pkt_info) == pkt_num, "some packets no hash:{}".format(p.pattern))
     pkt_queue = set([int(i[1], 16) for i in pkt_info])
     if stats:
         verify(
@@ -400,7 +401,7 @@  def check_queue(out, pkt_num, check_param, stats=True):
             if not any(q in queue for q in pkt_queue):
                 print((GREEN("pass: queue id %s not matched" % pkt_queue)))
             else:
-                check_rss(out, pkt_num, check_param, stats=True)
+                check_rss(out, pkt_num, check_param, stats=True, check_hash_num=False)
         return pkt_queue
     else:
         raise Exception("got wrong output, not match pattern %s" % p.pattern)