You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
1.5 KiB
63 lines
1.5 KiB
|
|
TESTS=$*
|
|
|
|
if test "$TESTS"x = x ; then
|
|
for i in $SRCDIR/tests/*.img.bz2
|
|
do
|
|
TESTS="$TESTS `basename $i .img.bz2`"
|
|
done
|
|
fi
|
|
|
|
mkdir -p tests/tmp
|
|
|
|
for i in $TESTS
|
|
do
|
|
printf "%s: " $i
|
|
RESULTS=$SRCDIR/tests/$i.results
|
|
IMAGE_BZ2=$SRCDIR/tests/$i.img.bz2
|
|
IMAGE=tests/tmp/$i.img.$$
|
|
if test ! -f $IMAGE_BZ2 -a ! -f $RESULTS ;
|
|
then
|
|
echo "non-existent"
|
|
continue
|
|
fi
|
|
if [ "$i" = "swap0" ] && which mkswap > /dev/null; then
|
|
# swap is native-endian, so regenerate before testing
|
|
dd if=/dev/zero of=$IMAGE bs=16k count=64 2> /dev/null
|
|
mkswap -v0 $IMAGE > /dev/null
|
|
elif [ "$i" = "swap1" ] && which mkswap > /dev/null; then
|
|
# swap is native-endian, so regenerate before testing
|
|
dd if=/dev/zero of=$IMAGE bs=16k count=64 2> /dev/null
|
|
# check if mkswap supports the "-U" option
|
|
if mkswap -h 2>&1 | grep -q -- '-U'; then
|
|
UUID="-U 8ff8e77f-8553-485e-8656-58be67a81666"
|
|
else
|
|
RMUUID="| grep -v UUID"
|
|
RES_TMP=$SRCDIR/tests/tmp/$i.results
|
|
grep -v UUID $RESULTS > $RES_TMP
|
|
RESULTS=$RES_TMP
|
|
fi
|
|
mkswap -v1 -L SWAP-TEST $UUID $IMAGE >/dev/null
|
|
else
|
|
bunzip2 < $IMAGE_BZ2 > $IMAGE
|
|
fi
|
|
eval ./tst_probe $IMAGE $RMUUID > tests/$i.out
|
|
rm -f $IMAGE tests/$i.ok tests/$i.failed
|
|
cmp -s tests/$i.out $RESULTS
|
|
unset RMUUID
|
|
if [ $? = 0 ]; then
|
|
echo ok
|
|
touch tests/$i.ok
|
|
else
|
|
echo failed
|
|
diff -c tests/$i.out $RESULTS > tests/$i.failed
|
|
fi
|
|
done
|
|
|
|
num_ok=`ls tests/*.ok 2>/dev/null | wc -l`
|
|
num_failed=`ls tests/*.failed 2>/dev/null | wc -l`
|
|
|
|
echo "$num_ok tests succeeded $num_failed tests failed"
|
|
|
|
test "$num_failed" -eq 0 || exit 1
|