Whamcloud - gitweb
- fix swap sanity tests in blkid, and blkid tests
[tools/e2fsprogs.git] / lib / blkid / test_probe.in
1
2 TESTS=$*
3
4 if test "$TESTS"x = x ; then
5         for i in $SRCDIR/tests/*.img.bz2
6         do
7                 TESTS="$TESTS `basename $i .img.bz2`"
8         done
9 fi
10
11 mkdir -p tests/tmp
12
13 for i in $TESTS
14 do
15         printf "%s: " $i
16         if test ! -f $SRCDIR/tests/$i.img.bz2 -a \
17                 ! -f $SRCDIR/tests/$i.results ; 
18         then
19                 echo "non-existent"
20                 continue
21         fi
22         bunzip2 < $SRCDIR/tests/$i.img.bz2 > tests/tmp/test.img.$$
23         # swap is native-endian, so regenerate before testing
24         if [ "$i" == "swap0" ]; then
25                 mkswap -v0 tests/tmp/test.img.$$ > /dev/null
26         elif [ "$i" == "swap1" ]; then
27                 mkswap -v1 -L SWAP-TEST -U 8ff8e77f-8553-485e-8656-58be67a81666 tests/tmp/test.img.$$ >/dev/null
28         fi
29         ./tst_probe tests/tmp/test.img.$$ > tests/$i.out
30         /bin/rm -f tests/tmp/test.img.$$ tests/$i.ok tests/$i.failed
31         cmp -s tests/$i.out $SRCDIR/tests/$i.results
32         if [ $? = 0 ];  then
33                 echo ok
34                 touch tests/$i.ok
35         else    
36                 echo failed
37                 diff -c tests/$i.out $SRCDIR/tests/$i.results > tests/$i.failed
38         fi
39 done
40
41 num_ok=`ls tests/*.ok 2>/dev/null | wc -l`
42 num_failed=`ls tests/*.failed 2>/dev/null | wc -l`
43
44 echo "$num_ok tests succeeded   $num_failed tests failed"
45
46 test "$num_failed" -eq 0 || exit 1