aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorAndreas Dilger <adilger@sun.com>2008-07-07 23:37:34 -0600
committerTheodore Ts'o <tytso@mit.edu>2008-07-10 08:52:50 -0400
commit3fc1db6218f885b5f0a50084f4634f7b793d638f (patch)
tree3d553437db55485a34ef757aebecd7d6c9e6d36c /lib
parent96099115d44ae9ee14ab829373796f9c81cd3606 (diff)
downloadandroid_external_e2fsprogs-3fc1db6218f885b5f0a50084f4634f7b793d638f.tar.gz
android_external_e2fsprogs-3fc1db6218f885b5f0a50084f4634f7b793d638f.tar.bz2
android_external_e2fsprogs-3fc1db6218f885b5f0a50084f4634f7b793d638f.zip
blkid: Make regression test tolerate older versions of mkswap
The blkid/tests contains new tests for swap, but the type-1 swapfile test depends on mkswap supporting the "-U" option to specify the UUID. This is not available even on relatively recent versions of mkswap (2.13.1 16-Jan-2008) so the test needs to be changed to handle this. If the "-U" option is not supported, don't verify the UUID in the blkid output during testing. Signed-off-by: Andreas Dilger <adilger@sun.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'lib')
-rw-r--r--lib/blkid/test_probe.in35
1 files changed, 24 insertions, 11 deletions
diff --git a/lib/blkid/test_probe.in b/lib/blkid/test_probe.in
index 4ef62a26..4b5ed5a6 100644
--- a/lib/blkid/test_probe.in
+++ b/lib/blkid/test_probe.in
@@ -13,31 +13,44 @@ mkdir -p tests/tmp
for i in $TESTS
do
printf "%s: " $i
- if test ! -f $SRCDIR/tests/$i.img.bz2 -a \
- ! -f $SRCDIR/tests/$i.results ;
+ 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
- bunzip2 < $SRCDIR/tests/$i.img.bz2 > tests/tmp/test.img.$$
if [ "$i" = "swap0" ]; then
# swap is native-endian, so regenerate before testing
- dd if=/dev/zero of=tests/tmp/test.img.$$ bs=16k count=64
- mkswap -v0 tests/tmp/test.img.$$ > /dev/null
+ dd if=/dev/zero of=$IMAGE bs=16k count=64 2> /dev/null
+ mkswap -v0 $IMAGE > /dev/null
elif [ "$i" = "swap1" ]; then
# swap is native-endian, so regenerate before testing
- dd if=/dev/zero of=tests/tmp/test.img.$$ bs=16k count=64
- mkswap -v1 -L SWAP-TEST -U 8ff8e77f-8553-485e-8656-58be67a81666 tests/tmp/test.img.$$ >/dev/null
+ 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
- ./tst_probe tests/tmp/test.img.$$ > tests/$i.out
- /bin/rm -f tests/tmp/test.img.$$ tests/$i.ok tests/$i.failed
- cmp -s tests/$i.out $SRCDIR/tests/$i.results
+ eval ./tst_probe $IMAGE $RMUUID > tests/$i.out
+ /bin/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 $SRCDIR/tests/$i.results > tests/$i.failed
+ diff -c tests/$i.out $RESULTS > tests/$i.failed
fi
done