[dts] [PATCH V2 4/5] framework: optimize wirespeed calculation and kill_all function
Yong Liu
yong.liu at intel.com
Fri Feb 13 03:14:53 CET 2015
When calculate wirespeed of one dut port, we need known both driver and nic
name. All nic use ixgbe driver, wirespeed is 10G. NIC avoton2c5 wirespeed is
2.5G. NIC fortville_eagle wirespeed is 10G. Other Fortville NICs wirespeed
is 40G.
Signed-off-by: Marvinliu <yong.liu at intel.com>
---
framework/crb.py | 1 -
framework/test_case.py | 26 ++++++++++++++++++++------
2 files changed, 20 insertions(+), 7 deletions(-)
diff --git a/framework/crb.py b/framework/crb.py
index fa03757..fb3639c 100644
--- a/framework/crb.py
+++ b/framework/crb.py
@@ -284,7 +284,6 @@ class Crb(object):
| awk '/config/ {print $2}'` ; do kill -9 $i; done"
self.alt_session.session.send_expect(cmd, "# ", 10)
time.sleep(.7)
- self.check_os_type()
def close(self):
"""
diff --git a/framework/test_case.py b/framework/test_case.py
index c5dd10f..fbde06c 100644
--- a/framework/test_case.py
+++ b/framework/test_case.py
@@ -33,9 +33,9 @@
A base class for creating DTF test cases.
"""
+import dts
from exception import VerifyFailure
-from settings import DRIVERS
-
+from settings import DRIVERS, NICS
class TestCase(object):
@@ -67,18 +67,32 @@ class TestCase(object):
raise ValueError(nic_name)
+ def get_nic_name(self, pci_id):
+ for nic_name, pci in NICS.items():
+ if pci_id == pci:
+ return nic_name
+
+ raise ValueError(nic_name)
+
def wirespeed(self, nic, frame_size, num_ports):
"""
Calculate bit rate. It is depended for NICs
"""
bitrate = 1000.0 # 1Gb ('.0' forces to operate as float)
- if self.get_nic_driver(self.nic) == "ixgbe":
+ if self.nic == "any" or self.nic == "cfg":
+ driver = dts.get_nic_driver(self.dut.ports_info[0]['type'])
+ nic = self.get_nic_name(self.dut.ports_info[0]['type'])
+ else:
+ driver = self.get_nic_driver(self.nic)
+ nic = self.nic
+
+ if driver == "ixgbe":
bitrate *= 10 # 10 Gb NICs
- elif self.nic == "avoton2c5":
+ elif nic == "avoton2c5":
bitrate *= 2.5 # 2.5 Gb NICs
- elif self.nic in ["fortville_spirit", "fortville_spirit_single"]:
+ elif nic in ["fortville_spirit", "fortville_spirit_single"]:
bitrate *= 40
- elif self.nic == 'fortville_eagle':
+ elif nic == 'fortville_eagle':
bitrate *= 10
return bitrate * num_ports / 8 / (frame_size + 20)
--
1.9.3
More information about the dts
mailing list