From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id A471A5927 for ; Wed, 17 Aug 2016 08:57:35 +0200 (CEST) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga101.jf.intel.com with ESMTP; 16 Aug 2016 23:57:34 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.28,529,1464678000"; d="scan'208";a="1026814515" Received: from unknown (HELO dpdk-fedora20.icx.intel.com) ([10.239.254.239]) by fmsmga001.fm.intel.com with ESMTP; 16 Aug 2016 23:57:34 -0700 From: "xu,huilong" To: dts@dpdk.org Cc: "xu,huilong" Date: Wed, 17 Aug 2016 14:53:07 +0800 Message-Id: <1471416787-14709-1-git-send-email-huilongx.xu@intel.com> X-Mailer: git-send-email 1.9.3 Subject: [dts] [PATCH V2] update dump test case X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Aug 2016 06:57:36 -0000 update list: 1. discard test_log_dump, because this function remove in dpdk.org 2. update ring_dump/mempool_dump case, ignore get ring/mempool struct info. because ring struct is a internal struct, only get ring/mempool name. and check. 3. update dump_devargs case. update arguments and check info. Signed-off-by: xu,huilong --- tests/TestSuite_dynamic_config.py | 118 +++++++++++++++---------------------- tests/TestSuite_unit_tests_dump.py | 44 +++++--------- 2 files changed, 62 insertions(+), 100 deletions(-) diff --git a/tests/TestSuite_dynamic_config.py b/tests/TestSuite_dynamic_config.py index 7df02b7..45beb62 100644 --- a/tests/TestSuite_dynamic_config.py +++ b/tests/TestSuite_dynamic_config.py @@ -64,19 +64,18 @@ class TestDynamicConfig(TestCase): # Based on h/w type, choose how many ports to use self.dut_ports = self.dut.get_ports(self.nic) - print self.dut_ports # Verify that enough ports are available self.verify(len(self.dut_ports) >= 2, "Insufficient ports") # Prepare cores and ports cores = self.dut.get_core_list('1S/2C/2T') - coreMask = dts.create_mask(cores) - portMask = dts.create_mask(self.dut_ports[:2]) + self.coreMask = dts.create_mask(cores) + self.portMask = dts.create_mask(self.dut_ports[:2]) # launch app cmd = "./%s/build/app/test-pmd/testpmd -c %s -n 3 -- -i --rxpt=0 \ - --rxht=0 --rxwt=0 --txpt=39 --txht=0 --txwt=0 --portmask=%s" % (self.target, coreMask, portMask) + --rxht=0 --rxwt=0 --txpt=39 --txht=0 --txwt=0 --portmask=%s" % (self.target, self.coreMask, self.portMask) self.dut.send_expect("%s" % cmd, "testpmd> ", 120) @@ -93,7 +92,8 @@ class TestDynamicConfig(TestCase): self.verify(cmp(ret.lower(), self.dest) == 0, "MAC address wrong") self.verify("Promiscuous mode: enabled" in out, "wrong default promiscuous value") - self.dut.send_expect("start", "testpmd> ", 120) + + self.dut.kill_all() def dynamic_config_send_packet(self, portid, destMac="00:11:22:33:44:55"): """ @@ -112,7 +112,12 @@ class TestDynamicConfig(TestCase): """ Run before each test case. """ - pass + cmd = "./%s/build/app/test-pmd/testpmd -c %s -n 3 -- -i --rxpt=0 \ + --rxht=0 --rxwt=0 --txpt=39 --txht=0 --txwt=0 --portmask=%s" % (self.target, self.coreMask, self.portMask) + + self.dut.send_expect("%s" % cmd, "testpmd> ", 120) + self.dut.send_expect("start", "testpmd> ", 120) + def test_dynamic_config_default_mode(self): """ @@ -123,15 +128,15 @@ class TestDynamicConfig(TestCase): # get the current rx statistic out = self.dut.send_expect("clear port stats all" , "testpmd> ") - out = self.dut.send_expect("show port stats %d" % portid, "testpmd> ") - cur_rxpkt = dts.regexp(out, "RX-packets: ([0-9]+)") + out = self.dut.send_expect("show port stats %d" % self.dut_ports[1], "testpmd> ") + cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") # send one packet with different MAC address than the portid self.dynamic_config_send_packet(portid) pre_rxpkt = cur_rxpkt - out = self.dut.send_expect("show port stats %d" % portid, "testpmd> ") - cur_rxpkt = dts.regexp(out, "RX-packets: ([0-9]+)") + out = self.dut.send_expect("show port stats %d" % self.dut_ports[1], "testpmd> ") + cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") # check the pakcet increasment self.verify(int(cur_rxpkt) == int(pre_rxpkt) @@ -141,8 +146,8 @@ class TestDynamicConfig(TestCase): self.dynamic_config_send_packet(portid, self.dest) pre_rxpkt = cur_rxpkt - out = self.dut.send_expect("show port stats %d" % portid, "testpmd> ") - cur_rxpkt = dts.regexp(out, "RX-packets: ([0-9]+)") + out = self.dut.send_expect("show port stats %d" % self.dut_ports[1], "testpmd> ") + cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") # check the pakcet increasment self.verify(int(cur_rxpkt) == int(pre_rxpkt) @@ -154,57 +159,26 @@ class TestDynamicConfig(TestCase): """ portid = self.dut_ports[0] - if self.nic in ["fortville_eagle", "fortville_spirit", "fortville_spirit_single"]: - self.dut.send_expect("set promisc all off", "testpmd> ") - out = self.dut.send_expect( - "show port stats %d" % self.dut_ports[1], "testpmd> ") - cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") - - self.dynamic_config_send_packet(portid) - pre_rxpkt = cur_rxpkt - out = self.dut.send_expect( - "show port stats %d" % self.dut_ports[1], "testpmd> ") - cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") - self.verify(int(cur_rxpkt) == int( - pre_rxpkt), "1st packet increasment error") - self.dynamic_config_send_packet(portid, self.dest) - pre_rxpkt = cur_rxpkt - out = self.dut.send_expect( - "show port stats %d" % self.dut_ports[1], "testpmd> ") - cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") - self.verify(int(cur_rxpkt) == int( - pre_rxpkt) + 1, "2nd packet increasment error") - else: - self.dut.send_expect("set promisc %d off" % portid, "testpmd> ") - - # get the current rx statistic - out = self.dut.send_expect( - "show port stats %d" % portid, "testpmd> ") - cur_rxpkt = dts.regexp(out, "RX-packets: ([0-9]+)") - - # send one packet with different MAC address than the portid - self.dynamic_config_send_packet(portid) - - pre_rxpkt = cur_rxpkt - out = self.dut.send_expect( - "show port stats %d" % portid, "testpmd> ") - cur_rxpkt = dts.regexp(out, "RX-packets: ([0-9]+)") - - # check the pakcet increasment - self.verify(int(cur_rxpkt) == int( - pre_rxpkt), "1st packet increasment error") - - # send one packet with the portid MAC address - self.dynamic_config_send_packet(portid, self.dest) - - pre_rxpkt = cur_rxpkt - out = self.dut.send_expect( - "show port stats %d" % portid, "testpmd> ") - cur_rxpkt = dts.regexp(out, "RX-packets: ([0-9]+)") - - # check the pakcet increasment - self.verify(int(cur_rxpkt) == int( - pre_rxpkt) + 1, "2nd packet increasment error") + + self.dut.send_expect("set promisc all off", "testpmd> ") + out = self.dut.send_expect( + "show port stats %d" % self.dut_ports[1], "testpmd> ") + cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") + + self.dynamic_config_send_packet(portid) + pre_rxpkt = cur_rxpkt + out = self.dut.send_expect( + "show port stats %d" % self.dut_ports[1], "testpmd> ") + cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") + self.verify(int(cur_rxpkt) == int( + pre_rxpkt), "1st packet increasment error") + self.dynamic_config_send_packet(portid, self.dest) + pre_rxpkt = cur_rxpkt + out = self.dut.send_expect( + "show port stats %d" % self.dut_ports[1], "testpmd> ") + cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") + self.verify(int(cur_rxpkt) == int( + pre_rxpkt) + 1, "2nd packet increasment error") def test_dynamic_config_broadcast(self): """ @@ -269,15 +243,15 @@ class TestDynamicConfig(TestCase): self.dut.send_expect("set promisc %d on" % portid, "testpmd> ") # get the current rx statistic - out = self.dut.send_expect("show port stats %d" % portid, "testpmd> ") - cur_rxpkt = dts.regexp(out, "RX-packets: ([0-9]+)") + out = self.dut.send_expect("show port stats %d" % self.dut_ports[1], "testpmd> ") + cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") # send one packet with different MAC address than the portid self.dynamic_config_send_packet(portid) pre_rxpkt = cur_rxpkt - out = self.dut.send_expect("show port stats %d" % portid, "testpmd> ") - cur_rxpkt = dts.regexp(out, "RX-packets: ([0-9]+)") + out = self.dut.send_expect("show port stats %d" % self.dut_ports[1], "testpmd> ") + cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") # check the pakcet increasment self.verify(int(cur_rxpkt) == int(pre_rxpkt) @@ -287,21 +261,21 @@ class TestDynamicConfig(TestCase): self.dynamic_config_send_packet(portid, self.dest) pre_rxpkt = cur_rxpkt - out = self.dut.send_expect("show port stats %d" % portid, "testpmd> ") - cur_rxpkt = dts.regexp(out, "RX-packets: ([0-9]+)") + out = self.dut.send_expect("show port stats %d" % self.dut_ports[1], "testpmd> ") + cur_rxpkt = dts.regexp(out, "TX-packets: ([0-9]+)") # check the pakcet increasment self.verify(int(cur_rxpkt) == int(pre_rxpkt) + 1, "2nd packet increasment error") - self.dut.send_expect("quit", "# ", 30) + #self.dut.send_expect("quit", "# ", 30) def tear_down(self): """ Run after each test case. """ - pass - + self.dut.kill_all() + def tear_down_all(self): """ Run after each test suite. diff --git a/tests/TestSuite_unit_tests_dump.py b/tests/TestSuite_unit_tests_dump.py index afdc256..730c4c1 100644 --- a/tests/TestSuite_unit_tests_dump.py +++ b/tests/TestSuite_unit_tests_dump.py @@ -72,7 +72,7 @@ class TestUnitTestsDump(TestCase): """ pass - def test_log_dump(self): + def discard_test_log_dump(self): """ Run history log dump test case. """ @@ -85,41 +85,28 @@ class TestUnitTestsDump(TestCase): """ Run history log dump test case. """ - self.dut.send_expect("./%s/app/test -n 1 -c ffff" % (self.target), "R.*T.*E.*>.*>", self.start_test_time) - out = self.dut.send_expect("dump_ring", "RTE>>", self.run_cmd_time) + self.dut.send_expect("./%s/app/testpmd -n 1 -c f -- -i" % (self.target), "testpmd>", self.start_test_time) + out = self.dut.send_expect("dump_ring", "testpmd>", self.run_cmd_time) self.dut.send_expect("quit", "# ") - elements = ['ring', 'address', 'flags', 'size', 'ct', 'ch', 'pt', 'ph', 'used', 'avail', 'watermark'] match_regex = "ring <(.*?)>@0x(.*)\r\n" - for element in elements[2:]: - match_regex += " %s=(\d*)\r\n" % element m = re.compile(r"%s" % match_regex, re.S) - result = m.search(out) - ring_info = dict(zip(elements, result.groups())) + result = m.findall(out) + - self.verify(ring_info['ring'] == 'MP_log_history', "Test failed") + self.verify(result[0][0] == 'MP_mbuf_pool_socket_0', "dump ring name failed") def test_mempool_dump(self): """ Run mempool dump test case. """ - self.dut.send_expect("./%s/app/test -n 1 -c ffff" % (self.target), "R.*T.*E.*>.*>", self.start_test_time) - out = self.dut.send_expect("dump_mempool", "RTE>>", self.run_cmd_time * 2) + self.dut.send_expect("./%s/app/testpmd -n 1 -c f -- -i" % (self.target), "testpmd>", self.start_test_time) + out = self.dut.send_expect("dump_mempool", "testpmd>", self.run_cmd_time * 2) self.dut.send_expect("quit", "# ") - elements = ['mempool', 'flags', 'ring', 'phys_addr', 'nb_mem_chunks', 'size', 'populated_size', 'header_size', 'elt_size', - 'trailer_size', 'total_obj_size', 'private_data_size', 'avg bytes/object', 'cache infos','cache_size', 'common_pool_count'] match_regex = "mempool <(.*?)>@0x(.*?)\r\n" - for element in elements[1:]: - if element == 'cache_size': - match_regex += " %s=(.*?)\r\n" % element - elif element == 'cache infos': - match_regex += " %s:\r\n" % element - else: - match_regex += " %s=(.*?)\r\n" % element m = re.compile(r"%s" % match_regex, re.S) - result = m.search(out) - mempool_info = dict(zip(elements, result.groups())) + result = m.findall(out) - self.verify(mempool_info['mempool'] == 'log_history', "Test failed") + self.verify(result[0][0] == 'mbuf_pool_socket_0', "dump mempool name failed") def test_physmem_dump(self): """ @@ -185,19 +172,20 @@ class TestUnitTestsDump(TestCase): Run devargs dump test case. """ test_port = self.dut_ports[0] - self.dut.send_expect("./%s/app/test -n 1 -c ffff -b %s" - % (self.target, self.dut.ports_info[test_port]['pci']), "R.*T.*E.*>.*>", self.start_test_time) + pci_address = self.dut.ports_info[test_port]['pci']; + self.dut.send_expect("./%s/app/test -n 1 -c ffff -b %s" + % (self.target, pci_address), "R.*T.*E.*>.*>", self.start_test_time) out = self.dut.send_expect("dump_devargs", "RTE>>", self.run_cmd_time * 2) self.dut.send_expect("quit", "# ") - black_str = "PCI blacklist %s" % self.dut.ports_info[test_port]['pci'] + black_str = "PCI blacklist %s" % pci_address self.verify(black_str in out, "Dump black list failed") self.dut.send_expect("./%s/app/test -n 1 -c ffff -w %s" - % (self.target, self.dut.ports_info[test_port]['pci']), "R.*T.*E.*>.*>", self.start_test_time) + % (self.target, pci_address), "R.*T.*E.*>.*>", self.start_test_time) out = self.dut.send_expect("dump_devargs", "RTE>>", self.run_cmd_time * 2) self.dut.send_expect("quit", "# ") - white_str = "PCI whitelist %s" % self.dut.ports_info[test_port]['pci'] + white_str = "PCI whitelist %s" % pci_address self.verify(white_str in out, "Dump white list failed") def tear_down(self): -- 1.9.3