From a832a44e67e77dd1a9ec57e9c054feddb0355cfc Mon Sep 17 00:00:00 2001 From: David Gibson Date: Wed, 6 Jul 2022 17:29:06 +1000 Subject: [PATCH] tests: Explicitly list test files in test/run, remove "onlyfor" support Currently test/run uses wildcards to run all of the tests in a directory. However, that wildcard list is filtered down by the "onlyfor" directives in the test files... usually to a single file. Therefore, just explicitly list the files we *really* want to run for this test mode. This makes it easier to see at the top level what tests will be executed, and to change that list temporarily while debugging specific failures. This means the "onlyfor" directive no longer has any purpose, and we can remove it. "onlyfor" was also the only used of the $MODE variable, so we can remove that too. Signed-off-by: David Gibson --- test/demo/passt | 1 - test/demo/pasta | 1 - test/demo/podman | 2 -- test/dhcp/passt | 1 - test/dhcp/pasta | 1 - test/icmp/passt_in_ns | 1 - test/lib/setup | 10 ------- test/lib/test | 9 ------ test/ndp/passt | 1 - test/ndp/pasta | 1 - test/perf/passt_tcp | 1 - test/perf/passt_udp | 1 - test/perf/pasta_tcp | 1 - test/perf/pasta_udp | 1 - test/run | 58 +++++++++++++++++++++------------------ test/tcp/passt | 1 - test/tcp/passt_in_ns | 1 - test/tcp/pasta | 1 - test/udp/passt | 1 - test/udp/passt_in_ns | 1 - test/udp/pasta | 1 - test/valgrind/passt | 1 - test/valgrind/passt_in_ns | 1 - 23 files changed, 31 insertions(+), 67 deletions(-) diff --git a/test/demo/passt b/test/demo/passt index b67ed26..f71392b 100644 --- a/test/demo/passt +++ b/test/demo/passt @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt say This is a short introduction to em passt say . diff --git a/test/demo/pasta b/test/demo/pasta index 754b320..f4b7da2 100644 --- a/test/demo/pasta +++ b/test/demo/pasta @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor pasta say This is a short introduction to em pasta say . diff --git a/test/demo/podman b/test/demo/podman index 3a73784..540e456 100644 --- a/test/demo/podman +++ b/test/demo/podman @@ -11,8 +11,6 @@ # Copyright (c) 2022 Red Hat GmbH # Author: Stefano Brivio -onlyfor podman - set OPTS -Z -w 4M -l 1M -P 2 -t10 --pacing-timer 10000 say This is an overview of diff --git a/test/dhcp/passt b/test/dhcp/passt index 4648821..00047a9 100644 --- a/test/dhcp/passt +++ b/test/dhcp/passt @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt passt_in_ns gtools ip jq dhclient sed tr htools ip jq sed tr head diff --git a/test/dhcp/pasta b/test/dhcp/pasta index 4652d09..65b1d42 100644 --- a/test/dhcp/pasta +++ b/test/dhcp/pasta @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor pasta nstools ip jq /sbin/dhclient htools ip jq diff --git a/test/icmp/passt_in_ns b/test/icmp/passt_in_ns index e1d9f7b..e4ac4ff 100644 --- a/test/icmp/passt_in_ns +++ b/test/icmp/passt_in_ns @@ -16,7 +16,6 @@ # to create "ping" sockets. Inside the namespace, there's a single group, which # is allowed by default to create them. -onlyfor passt_in_ns nstools ip jq sleep gtools ping ip jq diff --git a/test/lib/setup b/test/lib/setup index 604cfee..0d0f3cf 100755 --- a/test/lib/setup +++ b/test/lib/setup @@ -20,15 +20,11 @@ VMEM="$((${__mem_kib} / 1024 / 4))" # setup_build() - Set up pane layout for build tests setup_build() { - MODE=build - layout_host } # setup_passt() - Start qemu and passt setup_passt() { - MODE=passt - layout_passt # Ports: @@ -65,8 +61,6 @@ setup_passt() { # setup_pasta() - Create a network and user namespace, connect pasta to it setup_pasta() { - MODE=pasta - layout_pasta pane_run NS 'echo $$' @@ -98,8 +92,6 @@ setup_pasta() { # setup_passt_in_ns() - Set up namespace (with pasta), run qemu and passt into it setup_passt_in_ns() { - MODE=passt_in_ns - layout_passt_in_pasta # Ports: @@ -180,8 +172,6 @@ setup_passt_in_ns() { # setup_two_guests() - Set up two namespace, run qemu and passt in both of them setup_two_guests() { - MODE=passt_in_ns - layout_two_guests # Ports: diff --git a/test/lib/test b/test/lib/test index 12f2588..cb89e0b 100755 --- a/test/lib/test +++ b/test/lib/test @@ -13,9 +13,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -# Empty, 'passt' or 'pasta', to match against 'onlyfor' directive -MODE= - # test_iperf3() - Ugly helper for iperf3c/iperf3s directives # $1: Role: client or server # $2: Pane name, can be lowercase @@ -426,12 +423,6 @@ test() { __list="$(list_add "${__list}" "${__f}")" continue fi - - if [ -n "$(file_def "${__f}" onlyfor)" ] && \ - ! list_has "$(file_def "${__f}" onlyfor)" "${MODE}"; then - continue - fi - __list="$(list_add "${__list}" "${__f}")" done cd .. diff --git a/test/ndp/passt b/test/ndp/passt index 155ff26..d6b4c40 100644 --- a/test/ndp/passt +++ b/test/ndp/passt @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt passt_in_ns gtools ip jq sipcalc grep htools ip jq sipcalc grep cut diff --git a/test/ndp/pasta b/test/ndp/pasta index ef9dee7..2a2dd1a 100644 --- a/test/ndp/pasta +++ b/test/ndp/pasta @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor pasta nstools ip jq sipcalc grep cut htools ip jq sipcalc grep cut diff --git a/test/perf/passt_tcp b/test/perf/passt_tcp index 555e211..e80b608 100644 --- a/test/perf/passt_tcp +++ b/test/perf/passt_tcp @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt_in_ns gtools sysctl ip jq nproc seq sleep bc iperf3 tcp_rr tcp_crr # From neper nstools sysctl ip jq nproc seq sleep bc iperf3 tcp_rr tcp_crr htools bc head sed seq diff --git a/test/perf/passt_udp b/test/perf/passt_udp index b840d85..05e692e 100644 --- a/test/perf/passt_udp +++ b/test/perf/passt_udp @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt_in_ns gtools sysctl ip jq nproc sleep iperf3 udp_rr # From neper nstools ip jq sleep iperf3 udp_rr htools bc head sed diff --git a/test/perf/pasta_tcp b/test/perf/pasta_tcp index 5ef0f69..f4e97cb 100644 --- a/test/perf/pasta_tcp +++ b/test/perf/pasta_tcp @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt_in_ns htools head ip seq bc sleep iperf3 tcp_rr tcp_crr jq sed nstools sysctl nproc ip seq bc sleep iperf3 tcp_rr tcp_crr jq sed diff --git a/test/perf/pasta_udp b/test/perf/pasta_udp index 114a9bc..5f750b5 100644 --- a/test/perf/pasta_udp +++ b/test/perf/pasta_udp @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt_in_ns htools bc head ip sleep iperf3 udp_rr jq sed nstools ip sleep iperf3 udp_rr jq sed diff --git a/test/run b/test/run index 342d99e..3e5d56b 100755 --- a/test/run +++ b/test/run @@ -60,43 +60,50 @@ run() { [ ${CI} -eq 1 ] && video_start ci setup build - test $(cd test && echo build/*) - test $(cd test && echo distro/*) + test build/all + test build/static_checkers + test distro/debian + test distro/fedora + test distro/opensuse + test distro/ubuntu setup pasta - test $(cd test && echo ndp/*) - test $(cd test && echo dhcp/*) - test $(cd test && echo tcp/*) - test $(cd test && echo udp/*) + test ndp/pasta + test dhcp/pasta + test tcp/pasta + test udp/pasta teardown pasta setup passt - test $(cd test && echo ndp/*) - test $(cd test && echo dhcp/*) - test $(cd test && echo tcp/*) - test $(cd test && echo udp/*) - test $(cd test && echo valgrind/*) + test ndp/passt + test dhcp/passt + test tcp/passt + test udp/passt + test valgrind/passt teardown passt VALGRIND=1 setup passt_in_ns - test $(cd test && echo ndp/*) - test $(cd test && echo dhcp/*) - test $(cd test && echo icmp/*) - test $(cd test && echo tcp/*) - test $(cd test && echo udp/*) - test $(cd test && echo valgrind/*) + test ndp/passt + test dhcp/passt + test icmp/passt_in_ns + test tcp/passt_in_ns + test udp/passt_in_ns + test valgrind/passt_in_ns teardown passt_in_ns VALGRIND=0 setup passt_in_ns - test $(cd test && echo ndp/*) - test $(cd test && echo dhcp/*) - test $(cd test && echo perf/*) + test ndp/passt + test dhcp/passt + test perf/passt_tcp + test perf/passt_udp + test perf/pasta_tcp + test perf/pasta_udp teardown passt_in_ns setup two_guests - test $(cd test && echo two_guests/*) + test two_guests/basic teardown two_guests perf_finish @@ -124,22 +131,19 @@ demo() { layout_demo_passt video_start demo_passt - MODE=passt - test $(cd test && echo demo/*) + test demo/passt video_stop teardown demo_passt layout_demo_pasta video_start demo_pasta - MODE=pasta - test $(cd test && echo demo/*) + test demo/pasta video_stop teardown demo_pasta layout_demo_podman video_start demo_podman - MODE=podman - test $(cd test && echo demo/*) + test demo/podman video_stop teardown_demo_podman diff --git a/test/tcp/passt b/test/tcp/passt index b47a36d..4baa610 100644 --- a/test/tcp/passt +++ b/test/tcp/passt @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt gtools nc ip jq cat md5sum cut htools dd nc ip jq cat md5sum cut diff --git a/test/tcp/passt_in_ns b/test/tcp/passt_in_ns index 4229a3a..2a11e0b 100644 --- a/test/tcp/passt_in_ns +++ b/test/tcp/passt_in_ns @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt_in_ns gtools nc ip jq cat md5sum cut htools dd nc ip jq cat md5sum cut nstools nc ip jq cat md5sum cut diff --git a/test/tcp/pasta b/test/tcp/pasta index 531da04..068393a 100644 --- a/test/tcp/pasta +++ b/test/tcp/pasta @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor pasta htools dd ncat ip jq cat md5sum cut nstools ncat ip jq cat md5sum cut diff --git a/test/udp/passt b/test/udp/passt index 492fb12..8a848bd 100644 --- a/test/udp/passt +++ b/test/udp/passt @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt gtools nc tee grep cat ip jq md5sum cut htools printf dd nc tee grep cat ip jq md5sum cut diff --git a/test/udp/passt_in_ns b/test/udp/passt_in_ns index 71bda04..3607251 100644 --- a/test/udp/passt_in_ns +++ b/test/udp/passt_in_ns @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt_in_ns gtools nc tee grep cat ip jq md5sum cut nstools nc tee grep cat ip jq md5sum cut htools printf dd nc tee grep cat ip jq md5sum cut diff --git a/test/udp/pasta b/test/udp/pasta index 3123c42..a7e5015 100644 --- a/test/udp/pasta +++ b/test/udp/pasta @@ -11,7 +11,6 @@ # Copyright (c) 2021 Red Hat GmbH # Author: Stefano Brivio -onlyfor pasta nstools ncat tee grep cat ip jq md5sum cut htools printf dd ncat tee grep cat ip jq md5sum cut diff --git a/test/valgrind/passt b/test/valgrind/passt index 3af943a..f8bcf00 100644 --- a/test/valgrind/passt +++ b/test/valgrind/passt @@ -11,7 +11,6 @@ # Copyright (c) 2022 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt test valgrind: exit code hout PASST_PID cat passt.pid diff --git a/test/valgrind/passt_in_ns b/test/valgrind/passt_in_ns index bf50c7e..d28e251 100644 --- a/test/valgrind/passt_in_ns +++ b/test/valgrind/passt_in_ns @@ -11,7 +11,6 @@ # Copyright (c) 2022 Red Hat GmbH # Author: Stefano Brivio -onlyfor passt_in_ns test valgrind: exit code nsout PASST_PID cat passt.pid