btrfs-progs: check the free space tree in btrfsck
[platform/upstream/btrfs-progs.git] / tests / fuzz-tests.sh
1 #!/bin/bash
2 #
3 # misc tests on fuzzed or crafted images
4
5 unset TOP
6 unset LANG
7 LANG=C
8 SCRIPT_DIR=$(dirname $(readlink -f $0))
9 TOP=$(readlink -f $SCRIPT_DIR/../)
10 TEST_DEV=${TEST_DEV:-}
11 RESULTS="$TOP/tests/fuzz-tests-results.txt"
12 IMAGE="$TOP/tests/test.img"
13
14 source $TOP/tests/common
15
16 export TOP
17 export RESULTS
18 export LANG
19 export IMAGE
20
21 rm -f $RESULTS
22
23 check_prereq btrfs
24
25 # The tests are driven by their custom script called 'test.sh'
26
27 for i in $(find $TOP/tests/fuzz-tests -maxdepth 1 -mindepth 1 -type d   \
28         ${TEST:+-name "$TEST"} | sort)
29 do
30         name=$(basename $i)
31         cd $i
32         if [ -x test.sh ]; then
33                 echo "=== Entering $i" >> $RESULTS
34                 echo "    [TEST/fuzz]   $name"
35                 ./test.sh
36                 if [ $? -ne 0 ]; then
37                         _fail "test failed for case $(basename $i)"
38                 fi
39         fi
40         cd $TOP
41 done