[ovs-dev] [PATCH] ovs-macros: An option to suspend test execution on error

Ben Pfaff blp at ovn.org
Fri Jul 12 15:42:51 UTC 2019

On Thu, Jul 11, 2019 at 11:46:04AM -0400, Vasu Dasari wrote:
> Origins for this patch are captured at
> https://mail.openvswitch.org/pipermail/ovs-discuss/2019-June/048923.html.
> Summarizing here, when a test fails, it would be good to pause test execution
> and let the developer poke around the system to see current status of system.
> As part of this patch, made a small tweaks to ovs-macros.at, so that when test
> suite fails, ovs_on_exit() function will be called. And in this function, a check
> is made to see if an environment variable to OVS_PAUSE_TEST is set. If it is
> set, then test suite is paused and will continue to wait for user input
> Ctrl-D. Meanwhile user can poke around the system to see why test case has
> failed. Once done with investigation, user can press ctrl-d to cleanup the
> test suite.
> For example, to re-run test case 139:
> export OVS_PAUSE_TEST=1
> cd tests/system-userspace-testsuite.dir/139
> sudo -E ./run

Seems like a reasonable idea.

The following replies on GNU extensions to "read" and to "printf".  I'd
just substitute a plain "read", so that the user can just push Enter to

> +    while read -s -n 1 key; do
> +        printf -v keycode "%d" "'$key"
> +        [ $keycode -ne 4 ] || break
> +    done

More information about the dev mailing list