diff options
author | Jens Axboe <axboe@kernel.dk> | 2020-05-19 18:38:40 -0600 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2020-05-19 18:38:40 -0600 |
commit | bd1cc8f03cff0ca66e212688979f8e82abb31dab (patch) | |
tree | e26dd1e1e6f6e2c75095fb7f36978ec59638e75e /test | |
parent | a2141fc6718696db79101db358380a0490f6c506 (diff) | |
download | liburing-bd1cc8f03cff0ca66e212688979f8e82abb31dab.tar.gz liburing-bd1cc8f03cff0ca66e212688979f8e82abb31dab.tar.bz2 |
test: add option to run with defined test files / devices
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'test')
-rw-r--r-- | test/config | 3 | ||||
-rwxr-xr-x | test/runtests.sh | 36 |
2 files changed, 30 insertions, 9 deletions
diff --git a/test/config b/test/config new file mode 100644 index 0000000..fb66ee1 --- /dev/null +++ b/test/config @@ -0,0 +1,3 @@ +# Define raw test devices (or files) for test cases, if any +# +# TEST_FILES="/dev/nvme0n1p2 /data/file" diff --git a/test/runtests.sh b/test/runtests.sh index ada668e..69d9ad6 100755 --- a/test/runtests.sh +++ b/test/runtests.sh @@ -12,28 +12,46 @@ if ! [ $(id -u) = 0 ]; then do_kmsg="no" fi -for t in $TESTS; do +TEST_DIR=$(dirname $0) +TEST_FILES="" +if [ -f "$TEST_DIR/config" ]; then + . $TEST_DIR/config +fi + +run_test() +{ + T="$1" + D="$2" if [ "$do_kmsg" = "yes" ]; then - echo Running test $t | tee /dev/kmsg + echo Running test $T $D | tee /dev/kmsg else - echo Running test $t + echo Running test $T $D fi - timeout --preserve-status -s INT $TIMEOUT ./$t + timeout --preserve-status -s INT $TIMEOUT ./$T $D r=$? if [ "${r}" -eq 124 ]; then - echo "Test $t timed out (may not be a failure)" + echo "Test $T timed out (may not be a failure)" elif [ "${r}" -ne 0 ]; then - echo "Test $t failed with ret ${r}" - FAILED="$FAILED $t" + echo "Test $T failed with ret ${r}" + FAILED="$FAILED $T" RET=1 - else + elif [ ! -z "$D" ]; then sleep .1 ps aux | grep "\[io_wq_manager\]" > /dev/null R="$?" if [ "$R" -eq 0 ]; then - MAYBE_FAILED="$MAYBE_FAILED $t" + MAYBE_FAILED="$MAYBE_FAILED $T" fi fi +} + +for t in $TESTS; do + run_test $t + if [ ! -z "$TEST_FILES" ]; then + for dev in $TEST_FILES; do + run_test $t $dev + done + fi done if [ "${RET}" -ne 0 ]; then |