tests: Consolidate the implementations of send_and_expect_X

Type: test

there were multiple instances of send_and_expect_load_balancing
and a send_and_expect_one_itf which has the same functionality as send_and_expect_one.

Put one implementation of both in framework.py (where the other send_and_X functions reside).

Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: I7f629d440220bee29368067f475059322e1134f7
This commit is contained in:
Neale Ranns
2022-02-17 09:22:16 +00:00
parent aacd3ed6d5
commit 699bea2494
4 changed files with 18 additions and 53 deletions

View File

@ -1965,25 +1965,6 @@ class TestIP6LoadBalance(VppTestCase):
i.disable_mpls()
super(TestIP6LoadBalance, self).tearDown()
def pg_send(self, input, pkts):
self.vapi.cli("clear trace")
input.add_stream(pkts)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
def send_and_expect_load_balancing(self, input, pkts, outputs):
self.pg_send(input, pkts)
rxs = []
for oo in outputs:
rx = oo._get_capture(1)
self.assertNotEqual(0, len(rx))
rxs.append(rx)
return rxs
def send_and_expect_one_itf(self, input, pkts, itf):
self.pg_send(input, pkts)
rx = itf.get_capture(len(pkts))
def test_ip6_load_balance(self):
""" IPv6 Load-Balancing """
@ -2107,7 +2088,7 @@ class TestIP6LoadBalance(VppTestCase):
# The packets with Entropy label in should not load-balance,
# since the Entropy value is fixed.
#
self.send_and_expect_one_itf(self.pg0, port_ent_pkts, self.pg1)
self.send_and_expect_only(self.pg0, port_ent_pkts, self.pg1)
#
# change the flow hash config so it's only IP src,dst
@ -2121,7 +2102,7 @@ class TestIP6LoadBalance(VppTestCase):
[self.pg1, self.pg2])
self.send_and_expect_load_balancing(self.pg0, src_mpls_pkts,
[self.pg1, self.pg2])
self.send_and_expect_one_itf(self.pg0, port_ip_pkts, self.pg2)
self.send_and_expect_only(self.pg0, port_ip_pkts, self.pg2)
#
# change the flow hash config back to defaults
@ -2206,7 +2187,7 @@ class TestIP6LoadBalance(VppTestCase):
# inject the packet on pg0 - expect load-balancing across all 4 paths
#
self.vapi.cli("clear trace")
self.send_and_expect_one_itf(self.pg0, port_pkts, self.pg3)
self.send_and_expect_only(self.pg0, port_pkts, self.pg3)
class IP6PuntSetup(object):