[dts] [PATCH V1 1/1] tests/kni: resolve ping command compatibility
yufengmx
yufengx.mo at intel.com
Thu Apr 30 10:55:47 CEST 2020
resolve ping/ping6 command compatibility in low version linux os and high version linux os.
-I interface can be either an address, or an interface name.
Signed-off-by: yufengmx <yufengx.mo at intel.com>
---
tests/TestSuite_kni.py | 21 +++++++++++++--------
1 file changed, 13 insertions(+), 8 deletions(-)
diff --git a/tests/TestSuite_kni.py b/tests/TestSuite_kni.py
index 3cbd457..41d8fbe 100644
--- a/tests/TestSuite_kni.py
+++ b/tests/TestSuite_kni.py
@@ -559,6 +559,7 @@ class TestKni(TestCase):
# Setup IP address on virtual interfaces and tester ports
self.dut.kill_all()
self.start_kni()
+ ports_ips = {}
for port in self.config['ports']:
virtual_interface = self.virtual_interface_name(port)
@@ -567,14 +568,18 @@ class TestKni(TestCase):
out = self.dut.send_expect(
"ifconfig %s up" % virtual_interface, "# ")
time.sleep(5)
+ v_intf_ip = f"192.168.{port}.1"
+ tx_intf_ip = f"192.168.{port}.2"
self.dut.send_expect(
- "ifconfig %s 192.168.%d.1 netmask 255.255.255.192" % (virtual_interface, port), "# ")
+ "ifconfig %s %s netmask 255.255.255.192" % (v_intf_ip, port), "# ")
self.tester.send_expect(
- "ifconfig %s 192.168.%d.2 netmask 255.255.255.192" % (tx_interface, port), "# ")
+ "ifconfig %s %s netmask 255.255.255.192" % (tx_intf_ip, port), "# ")
+ ports_ips[port] = [tx_intf_ip, v_intf_ip]
self.tester.enable_ipv6(tx_interface)
time.sleep(5)
# Send ping requests and check for answers
for port in self.config['ports']:
+ tx_intf_ip, v_intf_ip = ports_ips[port]
tx_port = self.tester.get_local_port(port)
tx_interface = self.tester.get_interface(tx_port)
@@ -582,17 +587,17 @@ class TestKni(TestCase):
virtual_interface = self.virtual_interface_name(port)
out = self.dut.send_expect(
- "ping -w 2 -I %s 192.168.%d.2" % (virtual_interface, port), "# ", 10)
+ "ping -w 2 -I %s 192.168.%d.2" % (v_intf_ip, port), "# ", 10)
self.verify("64 bytes from 192.168.%d.2:" %
port in out, "ping not supported")
out = self.tester.send_expect(
- "ping -w 1 -I %s 192.168.%d.1" % (tx_interface, port), "# ", 10)
+ "ping -w 1 -I %s 192.168.%d.1" % (tx_intf_ip, port), "# ", 10)
self.verify("64 bytes from 192.168.%d.1:" %
port in out, "kni cannot reply ping packet")
out = self.dut.send_expect(
- "ping -w 1 -I %s 192.168.%d.123" % (virtual_interface, port), "# ", 10)
+ "ping -w 1 -I %s 192.168.%d.123" % (v_intf_ip, port), "# ", 10)
self.verify(
"0 received, 100% packet loss" in out, "ping not supported")
@@ -601,14 +606,14 @@ class TestKni(TestCase):
ipv6_address = out.split('\r\n')[0]
out = self.dut.send_expect("ping6 -w 1 -I %s %s" %
- (virtual_interface, str(ipv6_address)), "# ", 10)
+ (v_intf_ip, str(ipv6_address)), "# ", 10)
# FC25 ping6 output info is "64 bytes from ipv6_address%v: icmp_seq=1 ttl=64"
# other os ping6 output is "64 bytes from ipv6_address: icmp_seq=1 ttl=64"
self.verify("64 bytes from %s" %
ipv6_address in out, "ping6 not supported")
out = self.tester.send_expect(
- "ping6 -w 1 -I %s %s" % (tx_interface, str(ipv6_address)), "# ", 10)
+ "ping6 -w 1 -I %s %s" % (tx_intf_ip, str(ipv6_address)), "# ", 10)
self.verify("64 bytes from %s" %
ipv6_address in out, "kni cannot reply ping6 packet")
@@ -621,7 +626,7 @@ class TestKni(TestCase):
break
out = self.dut.send_expect("ping6 -w 1 -I %s %s" %
- (virtual_interface, ''.join(ipv6list)), "# ", 10)
+ (v_intf_ip, ''.join(ipv6list)), "# ", 10)
self.verify(
"0 received, 100% packet loss" in out, "ping6 not supported")
# remove ip from tester
--
2.21.0
More information about the dts
mailing list