diff options
Diffstat (limited to 'tests/fsck-tests.sh')
-rwxr-xr-x | tests/fsck-tests.sh | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/tests/fsck-tests.sh b/tests/fsck-tests.sh index d1cd7329..44cca1b8 100755 --- a/tests/fsck-tests.sh +++ b/tests/fsck-tests.sh @@ -3,13 +3,13 @@ # loop through all of our bad images and make sure fsck repairs them properly LANG=C -SCRIPT_DIR=$(dirname $(readlink -f $0)) -TOP=$(readlink -f $SCRIPT_DIR/../) +SCRIPT_DIR=$(dirname $(readlink -f "$0")) +TOP=$(readlink -f "$SCRIPT_DIR/../") TEST_DEV=${TEST_DEV:-} RESULTS="$TOP/tests/fsck-tests-results.txt" IMAGE="$TOP/tests/test.img" -source $TOP/tests/common +source "$TOP/tests/common" export TOP export RESULTS @@ -17,31 +17,35 @@ export LANG export IMAGE export TEST_DEV -rm -f $RESULTS +rm -f "$RESULTS" # test rely on corrupting blocks tool check_prereq btrfs-corrupt-block check_prereq btrfs-image check_prereq btrfs +check_kernel_support run_one_test() { local testname testname="$1" echo " [TEST/fsck] $(basename $testname)" - cd $testname - echo "=== Entering $testname" >> $RESULTS + cd "$testname" + echo "=== Entering $testname" >> "$RESULTS" if [ -x test.sh ]; then # Type 2 ./test.sh if [ $? -ne 0 ]; then + if [[ $TEST_LOG =~ dump ]]; then + cat "$RESULTS" + fi _fail "test failed for case $(basename $testname)" fi else # Type 1 - check_all_images `pwd` + check_all_images fi - cd $TOP + cd "$TOP" } # Each dir contains one type of error for btrfsck test. @@ -57,7 +61,7 @@ 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 \ +for i in $(find "$TOP/tests/fsck-tests" -maxdepth 1 -mindepth 1 -type d \ ${TEST:+-name "$TEST"} | sort) do run_one_test "$i" |