Add a generic blocking app class to allow a test writer to run any app
in the background. Make the original BlockingDPDKApp class inherit from
this one. Implement the new BlockingApp class in the packet_capture test
suite.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts
Usage of example DPDK apps should be avoided. Therefore, remove
the function that allows to build example apps. Moreover,
provide a dedicated helper function to retrieve the path to a
DPDK app.
Signed-off-by: Luca Vizzarro
---
dts/framework/remote_session/dpdk.py | 33
Hi again,
sending v2.
v2:
- removing the build dpdk example app as not needed.
Luca Vizzarro (2):
dts: remove dpdk example build function
dts: add generic blocking app class
dts/framework/remote_session/blocking_app.py | 135 +++
dts/framework/remote_session/dpdk.py
Make a distinction between example apps and app/ apps by renaming the
build app function. Moreover, provide a dedicated helper function to
retrieve the path to a DPDK app.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/remote_session/dpdk.py | 8 ++--
1 file
Add a generic blocking app class to allow a test writer to run any app
in the background. Make the original BlockingDPDKApp class inherit from
this one. Implement the new BlockingApp class in the packet_capture test
suite.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts
Hello,
sending in some minor improvements that unlocks the possibility of
running any app in the background.
Best,
Luca
Luca Vizzarro (2):
dts: add DPDK build app helper function
dts: add generic blocking app class
dts/framework/remote_session/blocking_app.py | 135
On 02/07/2025 06:21, Patrick Robb wrote:
From: Nicholas Pratte
Provide functional performance method to run performance tests using a
user-supplied performance traffic generator. The single core performance
test is included, with some basic statistics checks verifying TG packet
is the test mis
On 02/07/2025 06:21, Patrick Robb wrote:
class TrafficGeneratorConfig(FrozenModel):
@@ -404,6 +406,8 @@ class TrafficGeneratorConfig(FrozenModel):
#: The traffic generator type the child class is required to define to be
distinguished among
#: others.
type: TrafficGeneratorTy
Reviewed-by: Luca Vizzarro
On 02/07/2025 06:21, Patrick Robb wrote:
+++
b/dts/framework/testbed_model/traffic_generator/performance_traffic_generator.py
@@ -0,0 +1,63 @@
+
+@dataclass(slots=True)
+class PerformanceTrafficStats(ABC):
Why is this inheriting ABC? I don't see why a dataclass would be
abstract given it's e
Hi Patrick and Nick,
I am unsure what happened with this commit. The commit subject doesn't
match what's happening here. Mentions a rework of the config module,
which is not. Description seems ok.
Another issue I see is that some changes don't make a lot logical sense
as they stand here. The
Looks good to me. just a small nit:
On 16/06/2025 19:38, Dean Marx wrote:
+test_run.ctx.topology.setup()
+self.test_run.ctx.topology.configure_ports("sut", "dpdk")
no need to do `self.` here. Outside of this:
Reviewed-by: Luca Vizzarro
Looks good.
Reviewed-by: Luca Vizzarro
Agree with Dean's changes. Also the start marker is broken, but can
easily be added.
Reviewed-by: Luca Vizzarro
Reviewed-by: Luca Vizzarro
The changes look fine, so this is for them:
Reviewed-by: Luca Vizzarro
But the commit subject/body need amendment. The `dts: ` component prefix
is missing in the subject
On 06/03/2025 22:47, Dean Marx wrote:
Changes the unified packet testing suite to use layer 4
destination ports as
Reviewed-by: Luca Vizzarro
Hi Dean,
looks good to me. Just a minor optional nit.
Reviewed-by: Luca Vizzarro
On 06/03/2025 22:47, Dean Marx wrote:
+#:
+l4_dport: int | None = field(
+default=None,
+metadata=TextParser.find_int(r"(?:Destination TCP port=|Destination UDP
port
From: Thomas Wilks
Add a test suite that tests the packet capture framework
through the use of dpdk-dumpcap.
Signed-off-by: Thomas Wilks
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
.../dts/tests.TestSuite_packet_capture.rst| 8 +
dts/tests/TestSuite_packet_capture.py
Add an abstraction to handle file permissions for the remote.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/testbed_model/os_session.py| 34
dts/framework/testbed_model/posix_session.py | 11 ++-
2 files changed, 44 insertions(+), 1
From: Thomas Wilks
Add import for lldp scapy package to enable lldp packet
creation and handling.
Signed-off-by: Thomas Wilks
Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
---
dts/framework/testbed_model/traffic_generator/scapy.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/dts
Hi there,
sending in a v2 for the packet capture test suite.
v2:
- added a new command to change file permissions on remote
- changed test suite to use dpdk-dumpcap instead of dpdk-pdump
Best regards,
Luca
Luca Vizzarro (1):
dts: add facility to change file permissions
Thomas Wilks (2
ce by
not relying on the pre-bound driver prior to a DTS run, and always rely
on the configured kernel driver. Finally provide a new decorator to
allow test suites or cases to choose which ports from the configured
topology to dedicate to DPDK.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szcz
NICs like the Intel E810-C often produce ICMP packets. These packets
are stray and can interfere with testing. Therefore, add an ICMP
filtering option in the packet filter.
Moreover, use Scapy constants for the header values.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
Hi
Reviewed-by: Luca Vizzarro
Hi Patrick,
this looks good, easy and quick fix. I am afraid that you can't append
to an `Iterable` type though. I've also confirmed this with mypy:
Unsupported left operand type for + ("Iterable[TestSuiteConfig]")
I guess the easiest fix is to just change the argument type to `list`
from
Reviewed-by: Luca Vizzarro
I'm happy with the change. The original intention of the comment was to
make sure that non-involved ports were still being allowed, and that
there were no side effects. The comment change somewhat becomes
redundant as it's repeating the subsequent message
e use of Event
signals.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/test_run.py | 2 +-
.../testbed_model/traffic_generator/scapy.py | 347 --
.../traffic_generator/traffic_generator.py| 2 +-
dts/framework/uti
Turn the `path` attribute of InteractiveShell into a method property.
This allows path to both be defined statically by the class
implementation and also to be defined dynamically as part of the class
construction.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework
attribute.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
.../remote_session/interactive_shell.py | 9 +
.../testbed_model/traffic_generator/scapy.py | 38 +--
.../traffic_generator/traffic_generator.py| 6 +--
dts/framework/utils.py
When making any command a privileged one in a LinuxSession, there
currently is no consideration whether this command already includes single
quotes. Therefore escape the existing single quotes before making the
command.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts
Reviewed-by: Luca Vizzarro
called if the shell has already been closed.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
.../remote_session/interactive_shell.py | 24 ++-
dts/framework/remote_session/python_shell.py | 3 ++-
dts/framework/remote_session/testpmd_shell.py | 2 ++
dts
cleaned
up properly without affecting shells created on a lower level, like the
test suite.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
doc/api/dts/framework.remote_session.rst | 1 +
.../framework.remote_session.shell_pool.rst | 8 ++
dts/framework/context.py
the test run instead of the test suites.
Revert back to a single InteractiveShell to simplify the code. Keep the
context manager implementation but also render start_application and
close public methods again.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework
simplify
- added a new pseudo-shell to handle blocking applications
Best,
Luca
Luca Vizzarro (7):
dts: escape single quotes
dts: add blocking dpdk app class
dts: add shells pool
dts: revert back to a single InteractiveShell
dts: make shells path dynamic
dts: remove multi-inheritance
keystroke, therefore sending a SIGINT to the app.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/remote_session/dpdk_app.py | 73 +++
dts/framework/remote_session/dpdk_shell.py| 3 +-
.../single_active_interactive_shell.py| 12 ++-
dts
On 04/03/2025 22:39, Dean Marx wrote:
Looks great, thanks Luca!
Reviewed-by: Dean Marx
Thank you for your review Dean!
On 05/03/2025 23:29, Dean Marx wrote:
This makes sense, I noticed though that nothing is actually stored in
these placeholder directories yet, and dpdk is built in a separate
folder. Is the plan in the future to move this to the placeholder
directory? Or is there a different use case?
Reviewed-b
On 05/03/2025 23:26, Dean Marx wrote:
On Mon, Feb 24, 2025 at 8:30 AM Luca Vizzarro wrote:
The smoke tests where wrongly using all the node's ports for the smoke
tests. Ensure only the ports specified in the current topology are used.
Should be were, not where
argh, good catch! than
From: Luca Vizzarro
Improve the way that configuration errors are displayed to the user.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/config/__init__.py | 4 ++--
dts/framework/config/test_run.py | 2 +-
dts/framework/runner.py | 14 +-
3
From: Luca Vizzarro
Allow test suites to be configured individually. Moreover enable them to
implement their own custom configuration.
Adds a new argument to the command line which enables the user to supply
a YAML file to configure all of the requested test suites. This argument
becomes
From: Luca Vizzarro
To aid configurability and flexibility both for the user and the
developer, make DTS run only one test run per execution.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
doc/guides/tools/dts.rst | 18
dts/.gitignore | 2
From: Luca Vizzarro
Sphinx autodoc complains of is_blocking being duplicated. This is the
case as the parent already holds a docstring for this attribute. Remove
the duplication.
Fixes: 6ef07151aac4 ("dts: update docstrings")
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
From: Luca Vizzarro
The test suites are not documented in the API as their respective
documentation files are missing.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
doc/api/dts/index.rst | 1 +
doc/api/dts/tests.TestSuite_blocklist.rst
From: Luca Vizzarro
The autodoc member sorting order default is set to alphabetical, which
translates to autodoc sorting every member in modules, classes etc.
This also brings some side effects, like sorting capabilities which
can't be compared and result in errors.
This change prevents au
From: Luca Vizzarro
Amend the test suites docstring to conform to valid rst.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/tests/TestSuite_dynamic_config.py | 10 +--
dts/tests/TestSuite_mac_filter.py | 42 +-
dts/tests/TestSuite_mtu.py| 114
From: Luca Vizzarro
Hi there,
sending in v4 for the per-test-suite configuration patchset.
v4:
- rebased
- Changed implementation:
- test suites configurations are now provided
through a dedicated optional configuration file.
- running multiple test runs hinders flexibility in loading
Add traffic generator setup and teardown respectively in
TestRunSetup and TestRunTeardown.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/test_run.py | 2 ++
.../testbed_model/traffic_generator/traffic_generator.py| 2
After loading the user's settings and supplied configuration files, make
the dts folder the working directory for the runner.
This allows DTS to easily access the local DPDK tree.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/main.py | 6 ++
1 file chang
Add a facility to bind drivers for DPDK on runtimes where the DPDK build
is lacking. This is needed to execute any program that is based on DPDK,
but is unrelated to the testing.
Bugzilla ID: 1420
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/remote_session
The setup and teardown was previously missed when reworking the
execution internals into states. Add back the traffic generator setup
and teardown respectively in TestRunSetup and TestRunTeardown.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/test_run.py
The smoke tests where wrongly using all the node's ports for the smoke
tests. Ensure only the ports specified in the current topology are used.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/tests/TestSuite_smoke_tests.py | 2 +-
1 file changed, 1 insertion(+), 1 del
Allow the DPDKRuntimeEnvironment to work without an associated DPDK
build. This is useful when executing any program that is based on DPDK,
so that the common runtime functionality can be shared.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/context.py
Hi there,
sending in a solution that could enable DTS to bind drivers for
DPDK-based apps, like traffic generators, that lack the DPDK build to
gather dpdk-devbind.py from.
Best,
Luca
Luca Vizzarro (6):
dts: ensure runtime working directory
dts: use topology in smoke tests
dts: add tmp
about the setup is
held.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/test_run.py| 4 +++
dts/framework/testbed_model/node.py | 31 +++-
dts/framework/testbed_model/os_session.py| 12
dts/framework
In dts-check-format we were checking if the linter was updating the
tree, but we were not picking up the return value in case an unfixable
error would be raised.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
devtools/dts-check-format.sh | 1 +
1 file changed, 1 insertion
On 14/02/2025 18:54, Nicholas Pratte wrote:
This definitely cleans things up a lot!
Reviewed-by: Nicholas Pratte
@@ -217,9 +218,7 @@ def get_supported_capabilities(
)
if cls.capabilities_to_check:
capabilities_to_check_map = cls._get_decorated_capabilities_m
On 04/02/2025 21:08, Dean Marx wrote:
Hi Luca,
I saw in the meeting minutes that the main purpose of this series is
to implement the separation of concern principle better in DTS. Just
wondering, what parts of the current framework did you think needed to
be separated and why? I'm taking an OOP
Thank you Dean! Applied.
Great points! Thank you, will apply.
Forgot to mention that I've also removed the distinction between SUT and
TG nodes. These are now all the same nodes. Runtime configuration for
DPDK and TG now lies within the test run.
ained. This sets a predisposition for DPDK-based
traffic generator as well, as it'd make it easier to handle their own
environment using the pre-existing functionality.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
doc/api/dts/framework.remote_session.dpdk.rst | 8 +
d
Please dismiss this email. Was sent in error.
e new class. Internals which have been
completely reworked into a finite state machine (FSM), to simplify the
use and understanding of the different execution states, while
rendering the process of handling errors less repetitive and easier.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szcze
Make Port models standalone, so that they can be directly manipulated by
the test suites as needed. Moreover, let them handle themselves and
retrieve the logical name and mac address in autonomy.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
---
dts
erned about the nodes, and can directly use the tools
implementing context awareness, e.g. TestPmdShell, as needed.
Bugzilla ID: 1461
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
---
doc/api/dts/framework.context.rst | 8 ++
doc/api/dts/inde
Change the Topology model to add further flexility in its usage as a
standalone entry point to test suites.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
Reviewed-by: Nicholas Pratte
Reviewed-by: Dean Marx
---
dts/framework/testbed_model/topology.py | 85
In an effort to improve separation of concerns, make the TestRunConfig
class responsible for processing the configured test suites. Moreover,
give TestSuiteConfig a facility to yield references to the selected test
cases.
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
Reviewed-by
map topologies for each run as required. Moreover it
simplifies the process to link ports by defining a user friendly notation.
Bugzilla ID: 1478
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
---
dts/framework/config/__init__.py | 54
dts/framework/config
enums (as a consequence of the above)
- fixed some docstrings
Best,
Luca
Luca Vizzarro (7):
dts: add port topology configuration
dts: isolate test specification to config
dts: revamp Topology model
dts: improve Port model
dts: add global runtime context
dts: revamp runtime internals
dts
enums (as a consequence of the above)
- fixed some docstrings
Best,
Luca
Luca Vizzarro (7):
dts: add port topology configuration
dts: isolate test specification to config
dts: revamp Topology model
dts: improve Port model
dts: add global runtime context
dts: revamp runtime internals
dts
Reviewed-by: Luca Vizzarro
ing.
-testpmd.start()
Sorry!! you forgot to remove the lines above until the docstring I presume.
testpmd.set_port_mtu_all(1500, verify=True)
+
Looks good otherwise!
Reviewed-by: Luca Vizzarro
e new class. Internals which have been
completely reworked into a finite state machine (FSM), to simplify the
use and understanding of the different execution states, while
rendering the process of handling errors less repetitive and easier.
Signed-off-by: Luca Vizzarro
---
doc/ap
about the nodes, and can directly use the tools, e.g.
TestPmdShell, as needed which implement context awareness.
Bugzilla ID: 1461
Signed-off-by: Luca Vizzarro
---
doc/api/dts/framework.context.rst | 8 ++
doc/api/dts/index.rst | 1 +
dts/framework/conte
Add a new module which defines the global runtime status of DTS and the
distinct execution stages and steps.
Signed-off-by: Luca Vizzarro
---
doc/api/dts/framework.status.rst | 8
doc/api/dts/index.rst| 1 +
dts/framework/logger.py | 36 --
dts
Make Port models standalone, so that they can be directly manipulated by
the test suites as needed. Moreover, let them handle themselves and
retrieve the logical name and mac address in autonomy.
Signed-off-by: Luca Vizzarro
---
dts/framework/testbed_model/linux_session.py | 47
Change the Topology model to add further flexility in its usage as a
standalone entry point to test suites.
Signed-off-by: Luca Vizzarro
---
dts/framework/testbed_model/topology.py | 85 +
1 file changed, 45 insertions(+), 40 deletions(-)
diff --git a/dts/framework
In an effort to improve separation of concerns, make the TestRunConfig
class responsible for processing the configured test suites. Moreover,
give TestSuiteConfig a facility to yield references to the selected test
cases.
Signed-off-by: Luca Vizzarro
---
dts/framework/config/__init__.py | 84
map topologies for each run as required. Moreover it
simplies the process to link ports by defining a user friendly notation.
Bugzilla ID: 1478
Signed-off-by: Luca Vizzarro
---
dts/framework/config/__init__.py | 54
dts/framework/config/node.py | 25
proper documentation in
some instances. Please do point everything out.
Best,
Luca
Luca Vizzarro (7):
dts: add port topology configuration
dts: isolate test specification to config
dts: revamp Topology model
dts: improve Port model
dts: add runtime status
dts: add global runtime
Looks good. Just some very small comments on polishing.
Reviewed-by: Luca Vizzarro
On 31/01/2025 19:38, Nicholas Pratte wrote:
Forwarding restarts in the run-time MTU adjustment test case have been
explicitly added, given that the 'requires_forwarding_restart' decorator
from a prev
Reviewed-by: Luca Vizzarro
up the
version of fabric to 3, in order to support Python 3.12 and 3.13.
Signed-off-by: Luca Vizzarro
---
dts/poetry.lock| 165 +++--
dts/pyproject.toml | 2 +-
2 files changed, 129 insertions(+), 38 deletions(-)
diff --git a/dts/poetry.lock b/dts
partial.
While DTS still supports 3.10 and enum.member is not available, make
NicCapability accept only decorator tuples, where the decorator can now
be set to None when not in use.
Bugzilla ID: 1617
Signed-off-by: Luca Vizzarro
---
dts/framework/remote_session/testpmd_shell.py | 145
odel validators. Therefore eliminating autodoc's warnings, making it no
longer needed to warn the user about the possible warnings.
Signed-off-by: Luca Vizzarro
---
doc/guides/conf.py | 9 ++---
dts/framework/config/__init__.py | 18 -
function.
Finally, we were relying on an older version of our SSH client library
fabric which backwards-compatibility was dropped in Python 3.12, raising
further problems while building docs.
Best,
Luca
Luca Vizzarro (3):
dts: remove use of field validators
dts: stop using partial in enums
Reviewed-by: Luca Vizzarro
Hi Patrick,
thank you for the prompt fix!
On 29/01/2025 22:08, Patrick Robb wrote:
Fixes: 41d133d6c62f ("dts: automatically bring up link on interfaces")
Cc: pr...@iol.unh.edu
Signed-off-by: Patrick Robb
---
dts/framework/testbed_model/linux_session.py | 2 +-
1 file changed, 1 insertion(+
From: Nicholas Pratte
The build options configuration contained redundant fields that were not
in use, and there is no future scope for their use.
Bugzilla ID: 1360
Signed-off-by: Nicholas Pratte
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
---
dts
uites if none are specified.
Bugzilla ID: 1360
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
---
dts/framework/config/test_run.py | 16 +++-
dts/test_runs.example.yaml | 3 ++-
2 files changed, 17 insertions(+), 2 deletions(-)
diff --git
1598
Signed-off-by: Nicholas Pratte
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
---
dts/framework/config/__init__.py | 65 ++--
dts/framework/runner.py | 18 ++---
2 files changed, 64 insertions(+), 19 deletions(-)
them.
Bugzilla ID: 1344
Signed-off-by: Nicholas Pratte
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
---
doc/guides/tools/dts.rst | 78 ++-
dts/.gitignore| 4 +
dts/conf.yaml
ves 'vdevs' from 'system_under_test_node' and moves
it into 'test_runs'.
Bugzilla ID: 1360
Signed-off-by: Nicholas Pratte
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
---
dts/conf.yaml
From: Nicholas Pratte
To further the simplification of the user configuration, use_first_core
can be inferred from the lcores. If the user explicitly includes the
core 0 in the lcores range, it will only then be used.
Bugzilla ID: 1360
Signed-off-by: Nicholas Pratte
Signed-off-by: Luca
From: Nicholas Pratte
The 'arch' attribute in the conf.yaml is unnecessary, as this can be
readily discovered directly from any given node.
Bugzilla ID: 1360
Signed-off-by: Nicholas Pratte
Signed-off-by: Luca Vizzarro
Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
---
dts
v4:
- fixed bug where the CLI overrides where not being picked up
when values were not set in the config and/or the defaults
were available
- added new comment in the configuration example file to indicate
that all test suites are run if none are specified
Luca Vizzarro (3):
dts: handle
Looks good, thanks. Just one nit.
Reviewed-by: Luca Vizzarro
On 16/01/2025 18:43, Dean Marx wrote:
@@ -57,7 +57,7 @@ def send_packets_and_verify(
packet_list: List of Scapy packets to send and verify.
load: Raw layer load attribute in the sent packet
Hi Dean, it looks mostly good, just some nits.
On 21/01/2025 20:41, Dean Marx wrote:
+def flow_create(self, flow_rule: FlowRule, port_id: int, verify: bool = True)
-> int:
+"""Creates a flow rule in the testpmd session.
+
+Args:
+flow_rule: :class:`FlowRule` obje
1 - 100 of 589 matches
Mail list logo