1*6a54128fSAndroid Build Coastguard Worker 2*6a54128fSAndroid Build Coastguard WorkerTESTS=$* 3*6a54128fSAndroid Build Coastguard Worker 4*6a54128fSAndroid Build Coastguard Workerif test "$TESTS"x = x ; then 5*6a54128fSAndroid Build Coastguard Worker for i in $SRCDIR/tests/*.img.bz2 6*6a54128fSAndroid Build Coastguard Worker do 7*6a54128fSAndroid Build Coastguard Worker TESTS="$TESTS `basename $i .img.bz2`" 8*6a54128fSAndroid Build Coastguard Worker done 9*6a54128fSAndroid Build Coastguard Workerfi 10*6a54128fSAndroid Build Coastguard Worker 11*6a54128fSAndroid Build Coastguard Workermkdir -p tests/tmp 12*6a54128fSAndroid Build Coastguard Worker 13*6a54128fSAndroid Build Coastguard Workerfor i in $TESTS 14*6a54128fSAndroid Build Coastguard Workerdo 15*6a54128fSAndroid Build Coastguard Worker printf "%s: " $i 16*6a54128fSAndroid Build Coastguard Worker RESULTS=$SRCDIR/tests/$i.results 17*6a54128fSAndroid Build Coastguard Worker IMAGE_BZ2=$SRCDIR/tests/$i.img.bz2 18*6a54128fSAndroid Build Coastguard Worker IMAGE=tests/tmp/$i.img.$$ 19*6a54128fSAndroid Build Coastguard Worker if test ! -f $IMAGE_BZ2 -a ! -f $RESULTS ; 20*6a54128fSAndroid Build Coastguard Worker then 21*6a54128fSAndroid Build Coastguard Worker echo "non-existent" 22*6a54128fSAndroid Build Coastguard Worker continue 23*6a54128fSAndroid Build Coastguard Worker fi 24*6a54128fSAndroid Build Coastguard Worker if [ "$i" = "swap0" ] && which mkswap > /dev/null; then 25*6a54128fSAndroid Build Coastguard Worker # swap is native-endian, so regenerate before testing 26*6a54128fSAndroid Build Coastguard Worker dd if=/dev/zero of=$IMAGE bs=16k count=64 2> /dev/null 27*6a54128fSAndroid Build Coastguard Worker mkswap -v0 $IMAGE > /dev/null 28*6a54128fSAndroid Build Coastguard Worker elif [ "$i" = "swap1" ] && which mkswap > /dev/null; then 29*6a54128fSAndroid Build Coastguard Worker # swap is native-endian, so regenerate before testing 30*6a54128fSAndroid Build Coastguard Worker dd if=/dev/zero of=$IMAGE bs=16k count=64 2> /dev/null 31*6a54128fSAndroid Build Coastguard Worker # check if mkswap supports the "-U" option 32*6a54128fSAndroid Build Coastguard Worker if mkswap -h 2>&1 | grep -q -- '-U'; then 33*6a54128fSAndroid Build Coastguard Worker UUID="-U 8ff8e77f-8553-485e-8656-58be67a81666" 34*6a54128fSAndroid Build Coastguard Worker else 35*6a54128fSAndroid Build Coastguard Worker RMUUID="| grep -v UUID" 36*6a54128fSAndroid Build Coastguard Worker RES_TMP=$SRCDIR/tests/tmp/$i.results 37*6a54128fSAndroid Build Coastguard Worker grep -v UUID $RESULTS > $RES_TMP 38*6a54128fSAndroid Build Coastguard Worker RESULTS=$RES_TMP 39*6a54128fSAndroid Build Coastguard Worker fi 40*6a54128fSAndroid Build Coastguard Worker mkswap -v1 -L SWAP-TEST $UUID $IMAGE >/dev/null 41*6a54128fSAndroid Build Coastguard Worker else 42*6a54128fSAndroid Build Coastguard Worker bunzip2 < $IMAGE_BZ2 > $IMAGE 43*6a54128fSAndroid Build Coastguard Worker fi 44*6a54128fSAndroid Build Coastguard Worker eval ./tst_probe $IMAGE $RMUUID > tests/$i.out 45*6a54128fSAndroid Build Coastguard Worker rm -f $IMAGE tests/$i.ok tests/$i.failed 46*6a54128fSAndroid Build Coastguard Worker cmp -s tests/$i.out $RESULTS 47*6a54128fSAndroid Build Coastguard Worker unset RMUUID 48*6a54128fSAndroid Build Coastguard Worker if [ $? = 0 ]; then 49*6a54128fSAndroid Build Coastguard Worker echo ok 50*6a54128fSAndroid Build Coastguard Worker touch tests/$i.ok 51*6a54128fSAndroid Build Coastguard Worker else 52*6a54128fSAndroid Build Coastguard Worker echo failed 53*6a54128fSAndroid Build Coastguard Worker diff -c tests/$i.out $RESULTS > tests/$i.failed 54*6a54128fSAndroid Build Coastguard Worker fi 55*6a54128fSAndroid Build Coastguard Workerdone 56*6a54128fSAndroid Build Coastguard Worker 57*6a54128fSAndroid Build Coastguard Workernum_ok=`ls tests/*.ok 2>/dev/null | wc -l` 58*6a54128fSAndroid Build Coastguard Workernum_failed=`ls tests/*.failed 2>/dev/null | wc -l` 59*6a54128fSAndroid Build Coastguard Worker 60*6a54128fSAndroid Build Coastguard Workerecho "$num_ok tests succeeded $num_failed tests failed" 61*6a54128fSAndroid Build Coastguard Worker 62*6a54128fSAndroid Build Coastguard Workertest "$num_failed" -eq 0 || exit 1 63