make test: add option in pg interfaces for duplicating packets
Change-Id: Ia6d6de5de0414291d5637fb4b8c1480925f646d3 Signed-off-by: Alexandre Poirrier <apoirrie@cisco.com>
This commit is contained in:
parent
1197449cde
commit
a618e2082d
14
test/vpp_pg_interface.py
Normal file → Executable file
14
test/vpp_pg_interface.py
Normal file → Executable file
@ -68,6 +68,8 @@ class VppPGInterface(VppInterface):
|
||||
@property
|
||||
def input_cli(self):
|
||||
"""CLI string to load the injected packets"""
|
||||
if self._nb_replays is not None:
|
||||
return "%s limit %d" % (self._input_cli, self._nb_replays)
|
||||
return self._input_cli
|
||||
|
||||
@property
|
||||
@ -105,9 +107,13 @@ class VppPGInterface(VppInterface):
|
||||
self._input_cli = \
|
||||
"packet-generator new pcap %s source pg%u name %s" % (
|
||||
self.in_path, self.pg_index, self.cap_name)
|
||||
self._nb_replays = None
|
||||
|
||||
def enable_capture(self):
|
||||
""" Enable capture on this packet-generator interface"""
|
||||
""" Enable capture on this packet-generator interface
|
||||
of at most n packets.
|
||||
If n < 0, this is no limit
|
||||
"""
|
||||
try:
|
||||
if os.path.isfile(self.out_path):
|
||||
name = "%s/history.[timestamp:%f].[%s-counter:%04d].%s" % \
|
||||
@ -125,13 +131,17 @@ class VppPGInterface(VppInterface):
|
||||
self.test.vapi.cli(self.capture_cli)
|
||||
self._pcap_reader = None
|
||||
|
||||
def add_stream(self, pkts):
|
||||
def disable_capture(self):
|
||||
self.test.vapi.cli("%s disable" % self.capture_cli)
|
||||
|
||||
def add_stream(self, pkts, nb_replays=None):
|
||||
"""
|
||||
Add a stream of packets to this packet-generator
|
||||
|
||||
:param pkts: iterable packets
|
||||
|
||||
"""
|
||||
self._nb_replays = nb_replays
|
||||
try:
|
||||
if os.path.isfile(self.in_path):
|
||||
name = "%s/history.[timestamp:%f].[%s-counter:%04d].%s" %\
|
||||
|
Loading…
x
Reference in New Issue
Block a user