diff options
author | David Gibson <david@gibson.dropbear.id.au> | 2022-07-06 17:29:05 +1000 |
---|---|---|
committer | Stefano Brivio <sbrivio@redhat.com> | 2022-07-14 01:32:42 +0200 |
commit | 544f790bf837ebe7d7e25fa59a5790e5dbb412a1 (patch) | |
tree | 6cf91d9935fbe6e4c98575a2d6d66ae2b3a05d49 | |
parent | 5d7688d26f616831731a550f4a422f67aed9d21f (diff) | |
download | passt-544f790bf837ebe7d7e25fa59a5790e5dbb412a1.tar passt-544f790bf837ebe7d7e25fa59a5790e5dbb412a1.tar.gz passt-544f790bf837ebe7d7e25fa59a5790e5dbb412a1.tar.bz2 passt-544f790bf837ebe7d7e25fa59a5790e5dbb412a1.tar.lz passt-544f790bf837ebe7d7e25fa59a5790e5dbb412a1.tar.xz passt-544f790bf837ebe7d7e25fa59a5790e5dbb412a1.tar.zst passt-544f790bf837ebe7d7e25fa59a5790e5dbb412a1.zip |
tests: Don't automatically traverse directories of test files
The top level listing control of which tests to run is in test/run, however
it uses the test() function which runs an entire directory of test files,
filtered by some criteria. This makes it awkward to narrow down to a
subset of tests when debugging a specific failure.
To make this easier, have test() take an explicit list of test files to
run, and have the caller in test/run handle the directory traversal. The
construct we use for this is pretty awkward to handle the fact that we're
in the source tree root directory rather than test/ at this point in
test/run. Later cleanups will improve that.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
-rwxr-xr-x | test/lib/test | 4 | ||||
-rwxr-xr-x | test/run | 48 |
2 files changed, 26 insertions, 26 deletions
diff --git a/test/lib/test b/test/lib/test index ae42864..12f2588 100755 --- a/test/lib/test +++ b/test/lib/test @@ -415,12 +415,12 @@ test_one() { } # test() - Build list of tests to run, in order, then issue test_one() -# $1: Name of directory containing set of test files, relative to test/ +# $@: Test files to run, relative to test/ test() { __list= cd test - for __f in "${1}"/*; do + for __f; do __type="$(file -b --mime-type ${__f})" if [ "${__type}" = "text/x-shellscript" ]; then __list="$(list_add "${__list}" "${__f}")" @@ -60,43 +60,43 @@ run() { [ ${CI} -eq 1 ] && video_start ci setup build - test build - test distro + test $(cd test && echo build/*) + test $(cd test && echo distro/*) setup pasta - test ndp - test dhcp - test tcp - test udp + test $(cd test && echo ndp/*) + test $(cd test && echo dhcp/*) + test $(cd test && echo tcp/*) + test $(cd test && echo udp/*) teardown pasta setup passt - test ndp - test dhcp - test tcp - test udp - test valgrind + 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/*) teardown passt VALGRIND=1 setup passt_in_ns - test ndp - test dhcp - test icmp - test tcp - test udp - test valgrind + 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/*) teardown passt_in_ns VALGRIND=0 setup passt_in_ns - test ndp - test dhcp - test perf + test $(cd test && echo ndp/*) + test $(cd test && echo dhcp/*) + test $(cd test && echo perf/*) teardown passt_in_ns setup two_guests - test two_guests + test $(cd test && echo two_guests/*) teardown two_guests perf_finish @@ -125,21 +125,21 @@ demo() { layout_demo_passt video_start demo_passt MODE=passt - test demo + test $(cd test && echo demo/*) video_stop teardown demo_passt layout_demo_pasta video_start demo_pasta MODE=pasta - test demo + test $(cd test && echo demo/*) video_stop teardown demo_pasta layout_demo_podman video_start demo_podman MODE=podman - test demo + test $(cd test && echo demo/*) video_stop teardown_demo_podman |