btrfs-progs: tests: support testname glob
authorDavid Sterba <dsterba@suse.com>
Fri, 10 Jul 2015 22:38:07 +0000 (00:38 +0200)
committerDavid Sterba <dsterba@suse.com>
Mon, 31 Aug 2015 17:25:09 +0000 (19:25 +0200)
To run a given test set the variable TEST like

 $ make test TEST=002-bad-transid
 $ make test TEST=002-*

and only tests matching the value will be run. The pattern is glob and
pased to 'find -name'.

The convert tests do not follow the fsck and misc layout and are skipped
if TEST is set.

Signed-off-by: David Sterba <dsterba@suse.com>
tests/convert-tests.sh
tests/fsck-tests.sh
tests/misc-tests.sh

index 14dde1f..b395e25 100755 (executable)
@@ -52,6 +52,11 @@ convert_test() {
        run_check $TOP/btrfs-show-super $IMAGE
 }
 
+if ! [ -z "$TEST" ]; then
+       echo "    [TEST]   skipped all convert tests, TEST=$TEST"
+       exit 0
+fi
+
 for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
        convert_test "$feature" "ext2 4k nodesize" 4096 mke2fs -b 4096
        convert_test "$feature" "ext3 4k nodesize" 4096 mke2fs -j -b 4096
index 7e90f25..73538fe 100755 (executable)
@@ -64,7 +64,8 @@ run_one_test() {
 #    This is for case btrfs-image can't dump or case needs extra
 #    check/verify
 
-for i in $(find $TOP/tests/fsck-tests -maxdepth 1 -mindepth 1 -type d | sort)
+for i in $(find $TOP/tests/fsck-tests -maxdepth 1 -mindepth 1 -type d  \
+       ${TEST:+-name "$TEST"} | sort)
 do
        run_one_test "$i"
 done
index 2ae99db..1ed8850 100755 (executable)
@@ -34,7 +34,8 @@ check_prereq btrfs
 
 # The tests are driven by their custom script called 'test.sh'
 
-for i in $(find $TOP/tests/misc-tests -maxdepth 1 -mindepth 1 -type d | sort)
+for i in $(find $TOP/tests/misc-tests -maxdepth 1 -mindepth 1 -type d  \
+       ${TEST:+-name "$TEST"} | sort)
 do
        echo "    [TEST]   $(basename $i)"
        cd $i