[PATCH v4] dts: refactor flow suite with generator pattern

Dean Marx dmarx at iol.unh.edu
Thu Mar 5 18:52:17 CET 2026


On Thu, Mar 5, 2026 at 11:50 AM Patrick Robb <probb at iol.unh.edu> wrote:
>
> > -    @func_test
> > -    def drop_action_IP(self) -> None:
> > -        """Validate flow rules with drop actions and ethernet patterns.
> > +                try:
> > +                    verification_method = getattr(self, f"_verify_{test_case.verification_type}")
> >
> > -        Steps:
> > -            * Create a list of packets to test, with a corresponding flow list.
> > -            * Launch testpmd.
> > -            * Create first flow rule in flow list.
> > -            * Send first packet in packet list, capture verbose output.
> > -            * Delete flow rule, repeat for all flows/packets.
> > +                    if test_case.verification_type == "queue":
> > +                        testpmd.set_verbose(level=8)
> > +                        testpmd.start()
> >
> > -        Verify:
> > -            * Packet is dropped.
> > +                    verification_method(
> > +                        packet=test_case.packet,
> > +                        testpmd=testpmd,
> > +                        **test_case.verification_params,
> > +                    )
>
> Is testpmd.start() only being called for queue tests, but not drop
> tests? Do you need to pull the testpmd.start() outside of the "if
> test_case.verification_type == "queue":" block?

This is odd, it definitely should be outside of the queue block, but
looking at the logs testpmd.start() gets called on the drop action
cases anyways. I'm not sure if this is automatically called through
send_packet_and_capture or something similar, either way I'll update
this so that start is called in _run_tests for all actions.


More information about the dev mailing list