Message ID | 20200811060745.16434-2-junyux.jiang@intel.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | [v2,1/2] test_plans/fortville_rss_input_test_plan.rst: add flow query test case | expand |
Acked-by: Fu, Qi <qi.fu@intel.com> Best regards, Fu, Qi > -----Original Message----- > From: dts <dts-bounces@dpdk.org> On Behalf Of Junyu Jiang > Sent: Tuesday, August 11, 2020 2:08 PM > To: dts@dpdk.org > Cc: Jiang, JunyuX <junyux.jiang@intel.com> > Subject: [dts] [PATCH v2 2/2] tests/TestSuite_fortville_rss_input.py add flow > query test case > > add test case for rss flow query. > > Signed-off-by: Junyu Jiang <junyux.jiang@intel.com> > --- > tests/TestSuite_fortville_rss_input.py | 31 ++++++++++++++++++++++++++ > 1 file changed, 31 insertions(+) > > diff --git a/tests/TestSuite_fortville_rss_input.py > b/tests/TestSuite_fortville_rss_input.py > index d1ff39c..8a0c41e 100644 > --- a/tests/TestSuite_fortville_rss_input.py > +++ b/tests/TestSuite_fortville_rss_input.py > @@ -3962,6 +3962,37 @@ class TestFortvilleRssGranularityConfig(TestCase): > > self.dut.send_expect("quit", "# ", 30) > > + def test_flow_query(self): > + """ > + Test the flow rule query. > + """ > + self.start_testpmd() > + > + self.dut.send_expect("flow create 0 ingress pattern eth / ipv4 / tcp / end > actions rss types ipv4-tcp end queues end / end", "testpmd> ") > + self.dut.send_expect("flow create 0 ingress pattern eth / ipv4 / udp / end > actions rss types ipv4-udp l3-src-only end queues end func symmetric_toeplitz / > end", "testpmd> ") > + self.dut.send_expect("flow create 0 ingress pattern end actions rss types > end queues end func simple_xor / end", "testpmd> ") > + self.dut.send_expect("flow create 0 ingress pattern end actions rss types > end queues 1 2 end / end", "testpmd> ") > + > + rexp = r"flow query 0 (\d) rss\r\r\nRSS:\r\n queues: ([\S\s]+?)\r\n function: > (\S+?)\r\n types:\r\n ([\s\S]+)" > + out0 = self.dut.send_expect("flow query 0 0 rss", "testpmd> ") > + m0 = re.match(rexp, out0.strip()) > + self.verify("none" == m0.group(2) and "default" == m0.group(3) and "ipv4- > tcp" == m0.group(4) , "Query error") > + out1 = self.dut.send_expect("flow query 0 1 rss", "testpmd> ") > + m1 = re.match(rexp, out1.strip()) > + self.verify("none" == m1.group(2) and "symmetric_toeplitz" == m1.group(3) > and "ipv4-udp" in m1.group(4) and "l3-src-only" in m1.group(4) , "Query error") > + out2 = self.dut.send_expect("flow query 0 2 rss", "testpmd> ") > + m2 = re.match(rexp, out2.strip()) > + self.verify("none" == m2.group(2) and "simple_xor" == m2.group(3) and > "none" == m2.group(4) , "Query error") > + out3 = self.dut.send_expect("flow query 0 3 rss", "testpmd> ") > + m3 = re.match(rexp, out3.strip()) > + self.verify("1 2" == m3.group(2) and "default" == m3.group(3) and "none" > == m3.group(4) , "Query error") > + > + self.dut.send_expect("flow flush 0", "testpmd> ") > + out4 = self.dut.send_expect("flow query 0 0 rss", "testpmd> ") > + self.verify("Flow rule #0 not found" in out4, "Failed to rss query!") > + > + self.dut.send_expect("quit", "# ", 30) > + > def tear_down(self): > """ > Run after each test case. > -- > 2.17.1
> Subject: [dts] [PATCH v2 2/2] tests/TestSuite_fortville_rss_input.py add flow > query test case > > add test case for rss flow query. > > Signed-off-by: Junyu Jiang <junyux.jiang@intel.com> > --- > tests/TestSuite_fortville_rss_input.py | 31 ++++++++++++++++++++++++++ Applied
diff --git a/tests/TestSuite_fortville_rss_input.py b/tests/TestSuite_fortville_rss_input.py index d1ff39c..8a0c41e 100644 --- a/tests/TestSuite_fortville_rss_input.py +++ b/tests/TestSuite_fortville_rss_input.py @@ -3962,6 +3962,37 @@ class TestFortvilleRssGranularityConfig(TestCase): self.dut.send_expect("quit", "# ", 30) + def test_flow_query(self): + """ + Test the flow rule query. + """ + self.start_testpmd() + + self.dut.send_expect("flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss types ipv4-tcp end queues end / end", "testpmd> ") + self.dut.send_expect("flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types ipv4-udp l3-src-only end queues end func symmetric_toeplitz / end", "testpmd> ") + self.dut.send_expect("flow create 0 ingress pattern end actions rss types end queues end func simple_xor / end", "testpmd> ") + self.dut.send_expect("flow create 0 ingress pattern end actions rss types end queues 1 2 end / end", "testpmd> ") + + rexp = r"flow query 0 (\d) rss\r\r\nRSS:\r\n queues: ([\S\s]+?)\r\n function: (\S+?)\r\n types:\r\n ([\s\S]+)" + out0 = self.dut.send_expect("flow query 0 0 rss", "testpmd> ") + m0 = re.match(rexp, out0.strip()) + self.verify("none" == m0.group(2) and "default" == m0.group(3) and "ipv4-tcp" == m0.group(4) , "Query error") + out1 = self.dut.send_expect("flow query 0 1 rss", "testpmd> ") + m1 = re.match(rexp, out1.strip()) + self.verify("none" == m1.group(2) and "symmetric_toeplitz" == m1.group(3) and "ipv4-udp" in m1.group(4) and "l3-src-only" in m1.group(4) , "Query error") + out2 = self.dut.send_expect("flow query 0 2 rss", "testpmd> ") + m2 = re.match(rexp, out2.strip()) + self.verify("none" == m2.group(2) and "simple_xor" == m2.group(3) and "none" == m2.group(4) , "Query error") + out3 = self.dut.send_expect("flow query 0 3 rss", "testpmd> ") + m3 = re.match(rexp, out3.strip()) + self.verify("1 2" == m3.group(2) and "default" == m3.group(3) and "none" == m3.group(4) , "Query error") + + self.dut.send_expect("flow flush 0", "testpmd> ") + out4 = self.dut.send_expect("flow query 0 0 rss", "testpmd> ") + self.verify("Flow rule #0 not found" in out4, "Failed to rss query!") + + self.dut.send_expect("quit", "# ", 30) + def tear_down(self): """ Run after each test case.
add test case for rss flow query. Signed-off-by: Junyu Jiang <junyux.jiang@intel.com> --- tests/TestSuite_fortville_rss_input.py | 31 ++++++++++++++++++++++++++ 1 file changed, 31 insertions(+)