make test: improve robustness and performance
Introduce an API which asserts empty capture for interface. Throw exception in old API if the capture does not exist, thus making it clear if the test expects packets to arrive or not. Improve performance by not doing sleeps after starting the packet generator, rather lazily deleting captures when needed. Fix wrong usage of packet.show() in various tests. Change-Id: I456cb23316eef99b3f35f80344fe595c4db9a21c Signed-off-by: Klement Sekera <ksekera@cisco.com>
This commit is contained in:

committed by
Ole Trøan

parent
cc53285baf
commit
9225dee965
22
test/util.py
22
test/util.py
@ -15,6 +15,28 @@ def ppp(headline, packet):
|
||||
return o.getvalue()
|
||||
|
||||
|
||||
def ppc(headline, capture, limit=10):
|
||||
""" Return string containing ppp() printout for a capture.
|
||||
|
||||
:param headline: printed as first line of output
|
||||
:param capture: packets to print
|
||||
:param limit: limit the print to # of packets
|
||||
"""
|
||||
if not capture:
|
||||
return headline
|
||||
result = headline + "\n"
|
||||
count = 1
|
||||
for p in capture:
|
||||
result.append(ppp("Packet #%s:" % count, p))
|
||||
count += 1
|
||||
if count >= limit:
|
||||
break
|
||||
if limit < len(capture):
|
||||
result.append(
|
||||
"Capture contains %s packets in total, of which %s were printed" %
|
||||
(len(capture), limit))
|
||||
|
||||
|
||||
class NumericConstant(object):
|
||||
__metaclass__ = ABCMeta
|
||||
|
||||
|
Reference in New Issue
Block a user