[dts] [PATCH V1 3/4] [next]framework/dut: add check condition for trex port
yufengmx
yufengx.mo at intel.com
Mon Jul 29 03:48:40 CEST 2019
mapping
add check condition for trex port mapping and fix indentation issue.
Signed-off-by: yufengmx <yufengx.mo at intel.com>
---
framework/dut.py | 59 ++++++++++++++++++++++++++++++--------------------------
1 file changed, 32 insertions(+), 27 deletions(-)
diff --git a/framework/dut.py b/framework/dut.py
index cc36f72..48a5326 100644
--- a/framework/dut.py
+++ b/framework/dut.py
@@ -937,7 +937,12 @@ class Dut(Crb):
dutpci = self.ports_info[dutPort]['pci']
if peer is not None:
for remotePort in range(len(self.tester.ports_info)):
- if self.tester.ports_info[remotePort]['pci'].lower() == peer.lower():
+ if self.tester.ports_info[remotePort]['type'].lower() == 'trex':
+ if self.tester.ports_info[remotePort]['intf'].lower() == peer.lower():
+ hits[remotePort] = True
+ self.ports_map[dutPort] = remotePort
+ break
+ elif self.tester.ports_info[remotePort]['pci'].lower() == peer.lower():
hits[remotePort] = True
self.ports_map[dutPort] = remotePort
break
@@ -959,34 +964,34 @@ class Dut(Crb):
ipv6 = self.get_ipv6_address(dutPort)
if ipv6 == "Not connected":
if self.tester.ports_info[remotePort].has_key('ipv4'):
- out = self.tester.send_ping(
- dutPort, self.tester.ports_info[remotePort]['ipv4'],
- self.get_mac_address(dutPort))
- else:
- continue
- else:
+ out = self.tester.send_ping(
+ dutPort, self.tester.ports_info[remotePort]['ipv4'],
+ self.get_mac_address(dutPort))
+ else:
+ continue
+ else:
if getattr(self, 'send_ping6', None):
- out = self.send_ping6(
- dutPort, self.tester.ports_info[remotePort]['ipv6'],
- self.get_mac_address(dutPort))
+ out = self.send_ping6(
+ dutPort, self.tester.ports_info[remotePort]['ipv6'],
+ self.get_mac_address(dutPort))
else:
- out = self.tester.send_ping6(
- remotePort, ipv6, self.get_mac_address(dutPort))
-
- if ('64 bytes from' in out):
- self.logger.info("PORT MAP: [dut %d: tester %d]" % (dutPort, remotePort))
- self.ports_map[dutPort] = remotePort
- hits[remotePort] = True
- if self.crb['IP'] == self.crb['tester IP']:
- # remove dut port act as tester port
- remove_port = self.get_port_info(remotepci)
- if remove_port is not None:
- remove.append(remove_port)
- # skip ping from those port already act as dut port
- testerPort = self.tester.get_local_index(dutpci)
- if testerPort != -1:
- hits[testerPort] = True
- break
+ out = self.tester.send_ping6(
+ remotePort, ipv6, self.get_mac_address(dutPort))
+
+ if ('64 bytes from' in out):
+ self.logger.info("PORT MAP: [dut %d: tester %d]" % (dutPort, remotePort))
+ self.ports_map[dutPort] = remotePort
+ hits[remotePort] = True
+ if self.crb['IP'] == self.crb['tester IP']:
+ # remove dut port act as tester port
+ remove_port = self.get_port_info(remotepci)
+ if remove_port is not None:
+ remove.append(remove_port)
+ # skip ping from those port already act as dut port
+ testerPort = self.tester.get_local_index(dutpci)
+ if testerPort != -1:
+ hits[testerPort] = True
+ break
for port in remove:
self.ports_info.remove(port)
--
1.9.3
More information about the dts
mailing list