mirror of
https://github.com/espressif/openthread.git
synced 2026-10-04 23:07:37 +00:00
[test] save packets as pcap file in thread-cert tests (#2965)
This commit is contained in:
@@ -38,6 +38,7 @@ import sys
|
||||
import io
|
||||
import config
|
||||
import message
|
||||
import pcap
|
||||
|
||||
class RealTime:
|
||||
|
||||
@@ -54,6 +55,9 @@ class RealTime:
|
||||
def go(self, duration):
|
||||
time.sleep(duration)
|
||||
|
||||
def stop(self):
|
||||
pass
|
||||
|
||||
class VirtualTime:
|
||||
|
||||
BASE_PORT = 9000
|
||||
@@ -73,10 +77,17 @@ class VirtualTime:
|
||||
self.current_time = 0
|
||||
self.current_event = None;
|
||||
|
||||
self._pcap = pcap.PcapCodec(os.getenv('TEST_NAME', 'current'))
|
||||
|
||||
self._message_factory = config.create_default_thread_message_factory()
|
||||
|
||||
def __del__(self):
|
||||
if self.sock:
|
||||
self.stop()
|
||||
|
||||
def stop(self):
|
||||
self.sock.close()
|
||||
self.sock = None
|
||||
|
||||
def _add_message(self, nodeid, message):
|
||||
addr = ('127.0.0.1', self.port + nodeid)
|
||||
@@ -167,6 +178,7 @@ class VirtualTime:
|
||||
#print "-- Enqueue\t", event
|
||||
bisect.insort(self.event_queue, event)
|
||||
|
||||
self._pcap.append(data, (event_time // 1000000, event_time % 1000000))
|
||||
self._add_message(addr[1] - self.port, data)
|
||||
|
||||
# add radio transmit done events to event queue
|
||||
|
||||
Reference in New Issue
Block a user