[v3,2/4] dts: add toggle option to send and capture

Message ID 20240708193012.5465-2-dmarx@iol.unh.edu (mailing list archive)
State Superseded
Delegated to: Thomas Monjalon
Headers
Series [v3,1/4] dts: add multicast set function to shell |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Dean Marx July 8, 2024, 7:30 p.m. UTC
  add option to skip _adjust_addresses method in send_packet_and_capture
when test cases involve sending packets with a preset MAC address.

Signed-off-by: Dean Marx <dmarx@iol.unh.edu>
---
 dts/framework/test_suite.py | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
  

Comments

Jeremy Spewock July 10, 2024, 4:13 p.m. UTC | #1
This makes sense to me, but we should probably have more discussion
about whether to use this method with the boolean flag or if we should
use the other method in the dynamic queue suite that adjusts
everything except things that the user changes. I'd be interested to
hear what Juraj or Luca think about it.
  

Patch

diff --git a/dts/framework/test_suite.py b/dts/framework/test_suite.py
index 694b2eba65..551a587525 100644
--- a/dts/framework/test_suite.py
+++ b/dts/framework/test_suite.py
@@ -185,6 +185,7 @@  def send_packet_and_capture(
         packet: Packet,
         filter_config: PacketFilteringConfig = PacketFilteringConfig(),
         duration: float = 1,
+        adjust_addresses: bool = True,
     ) -> list[Packet]:
         """Send and receive `packet` using the associated TG.
 
@@ -195,11 +196,15 @@  def send_packet_and_capture(
             packet: The packet to send.
             filter_config: The filter to use when capturing packets.
             duration: Capture traffic for this amount of time after sending `packet`.
+            adjust_addresses: If :data:'True', adjust addresses of the egressing packet with
+                a default addressing scheme. If :data:'False', do not adjust the addresses of
+                egressing packet.
 
         Returns:
             A list of received packets.
         """
-        packet = self._adjust_addresses(packet)
+        if adjust_addresses:
+            packet = self._adjust_addresses(packet)
         return self.tg_node.send_packet_and_capture(
             packet,
             self._tg_port_egress,