test suite reviews and discussions
 help / color / mirror / Atom feed
From: yufengmx <yufengx.mo@intel.com>
To: dts@dpdk.org, zhaoyan.chen@intel.com
Cc: yufengmx <yufengx.mo@intel.com>
Subject: [dts] [PATCH V1 1/1] tests/pmd_bonded_8023ad: update script by test plan change
Date: Fri, 15 May 2020 13:52:31 +0800	[thread overview]
Message-ID: <20200515055231.11341-2-yufengx.mo@intel.com> (raw)
In-Reply-To: <20200515055231.11341-1-yufengx.mo@intel.com>


update script by test plan change.

Signed-off-by: yufengmx <yufengx.mo@intel.com>
---
 tests/TestSuite_pmd_bonded_8023ad.py | 25 ++++++++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

diff --git a/tests/TestSuite_pmd_bonded_8023ad.py b/tests/TestSuite_pmd_bonded_8023ad.py
index 6267406..3707042 100644
--- a/tests/TestSuite_pmd_bonded_8023ad.py
+++ b/tests/TestSuite_pmd_bonded_8023ad.py
@@ -94,7 +94,30 @@ class TestBonding8023AD(TestCase):
             err_fmt = "link bonding mode 4 (802.3ad) set {0} failed"
             self.verify(expected_msg in out, err_fmt.format(status))
 
+    def set_special_command(self, bond_port):
+        cmds = [
+            "set bonding lacp dedicated_queues {} enable".format(bond_port),
+            "set allmulti 0 on",
+            "set allmulti 1 on",
+            "set allmulti {} on".format(bond_port),
+            "set portlist {}".format(bond_port), ]
+        [self.bond_inst.d_console([cmd, 'testpmd>', 15]) for cmd in cmds]
+
     def set_8023ad_bonded(self, slaves, bond_mode, ignore=True):
+        ''' set 802.3ad bonded mode for the specified bonding mode '''
+        specified_socket = self.dut.get_numa_id(slaves[0])
+        # create bonded device, add slaves in it
+        bond_port = self.bond_inst.create_bonded_device(bond_mode, specified_socket)
+        if not ignore:
+            # when no slave attached, mac should be 00:00:00:00:00:00
+            self.bonding_8023ad_check_macs_without_slaves(bond_port)
+        # add slave
+        self.bond_inst.add_slave(bond_port, False, '', *slaves)
+        # set special command
+        self.set_special_command(bond_port)
+        return bond_port
+
+    def set_8023ad_bonded2(self, slaves, bond_mode, ignore=True):
         ''' set 802.3ad bonded mode for the specified bonding mode '''
         specified_socket = self.dut.get_numa_id(slaves[0])
         # create bonded device, add slaves in it
@@ -332,7 +355,7 @@ class TestBonding8023AD(TestCase):
         for mode in self.DEDICATED_QUEUES:
             try:
                 self.bond_inst.start_testpmd()
-                bond_port = self.set_8023ad_bonded(slaves, bond_mode)
+                bond_port = self.set_8023ad_bonded2(slaves, bond_mode)
                 self.set_8023ad_dedicated_queues(bond_port, mode)
             except Exception as e:
                 check_results.append(e); print(traceback.format_exc())
-- 
2.21.0


  reply	other threads:[~2020-05-15  5:51 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-15  5:52 [dts] [PATCH V1 0/1] " yufengmx
2020-05-15  5:52 ` yufengmx [this message]
2020-05-18  1:18   ` [dts] [PATCH V1 1/1] " Chen, Zhaoyan
2020-05-19  2:00   ` Tu, Lijuan
2020-05-18  1:18 ` [dts] [PATCH V1 0/1] " Chen, Zhaoyan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200515055231.11341-2-yufengx.mo@intel.com \
    --to=yufengx.mo@intel.com \
    --cc=dts@dpdk.org \
    --cc=zhaoyan.chen@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).