diff options
author | Deepak S <deepak.s@linux.intel.com> | 2017-08-27 19:11:59 -0700 |
---|---|---|
committer | Ross Brattain <ross.b.brattain@intel.com> | 2017-09-17 22:50:46 -0700 |
commit | 7a73b94481bbaeea33db0d27f84e8e23506c7184 (patch) | |
tree | b98a339b9aa9b52ed1bf2af2e17b1ca91acf7930 | |
parent | 7e2cf50af684b10779430f52c01b378f7c796012 (diff) |
Fix all the exception while genereating the latency traffic
Change-Id: I0b25e704b29fc68678eaa29d9e1d1eb04ee94e3e
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
-rw-r--r-- | tests/unit/network_services/traffic_profile/test_rfc2544.py | 7 | ||||
-rw-r--r-- | yardstick/network_services/traffic_profile/rfc2544.py | 35 |
2 files changed, 19 insertions, 23 deletions
diff --git a/tests/unit/network_services/traffic_profile/test_rfc2544.py b/tests/unit/network_services/traffic_profile/test_rfc2544.py index b63a805f3..2366b8124 100644 --- a/tests/unit/network_services/traffic_profile/test_rfc2544.py +++ b/tests/unit/network_services/traffic_profile/test_rfc2544.py @@ -258,9 +258,10 @@ class TestRFC2544Profile(unittest.TestCase): def test_execute_latency(self): traffic_generator = mock.Mock(autospec=TrexProfile) - traffic_generator.my_ports = [0, 1] - traffic_generator.priv_ports = [-1] - traffic_generator.pub_ports = [1] + traffic_generator.networks = { + "private_0": ["xe0"], + "public_0": ["xe1"], + } traffic_generator.client = \ mock.Mock(return_value=True) r_f_c2544_profile = RFC2544Profile(self.TRAFFIC_PROFILE) diff --git a/yardstick/network_services/traffic_profile/rfc2544.py b/yardstick/network_services/traffic_profile/rfc2544.py index 6a0ecaf99..3dc08df69 100644 --- a/yardstick/network_services/traffic_profile/rfc2544.py +++ b/yardstick/network_services/traffic_profile/rfc2544.py @@ -151,34 +151,29 @@ class RFC2544Profile(TrexProfile): return samples def execute_latency(self, generator=None, samples=None): - if generator is None: - generator = self.generator + if generator is not None and self.generator is None: + self.generator = generator if samples is None: - samples = generator.generate_samples() + samples = self.generator.generate_samples() self.pps, multiplier = self.calculate_pps(samples) self.ports = [] self.pg_id = self.params['traffic_profile'].get('pg_id', 1) - priv_ports = generator.priv_ports - pub_ports = generator.pub_ports - for index, (priv_port, pub_port) in enumerate(zip(priv_ports, pub_ports), 1): - profile_data = self.params.get('private_{}'.format(index), '') - self.ports.append(priv_port) - generator.client.add_streams(self.get_streams(profile_data), - ports=priv_port) - - profile_data = self.params.get('public_{}'.format(index), '') - if not profile_data or generator.correlated_traffic: + for vld_id, intfs in sorted(self.generator.networks.items()): + profile_data = self.params.get(vld_id) + if not profile_data: continue + # correlated traffic doesn't use public traffic? + if vld_id.startswith("public") and self.generator.rfc2544_helper.correlated_traffic: + continue + for intf in intfs: + port = self.generator.vnfd_helper.port_num(intf) + self.ports.append(port) + self.generator.client.add_streams(self.get_streams(profile_data), ports=port) - pub_port = generator.pub_ports[index] - self.ports.append(pub_port) - generator.client.add_streams(self.get_streams(profile_data), - ports=pub_port) - - generator.start_client(ports=self.ports, mult=str(multiplier), - duration=120, force=True) + self.generator.start_client(ports=self.ports, mult=str(multiplier), + duration=120, force=True) self.first_run = False def calculate_pps(self, samples): |