e2fsprogs/tests/run_e2fsck

76 lines
1.4 KiB
Plaintext

if [ "$IMAGE"x = x ]; then
IMAGE=$test_dir/image.gz
fi
if [ "$FSCK_OPT"x = x ]; then
FSCK_OPT=-yf
fi
if [ "$SECOND_FSCK_OPT"x = x ]; then
SECOND_FSCK_OPT=-yf
fi
if [ "$OUT1"x = x ]; then
OUT1=$test_name.1.log
fi
if [ "$OUT2"x = x ]; then
OUT2=$test_name.2.log
fi
if [ "$EXP1"x = x ]; then
EXP1=$test_dir/expect.1
fi
if [ "$EXP2"x = x ]; then
EXP2=$test_dir/expect.2
fi
gunzip < $IMAGE > $TMPFILE
eval $PREP_CMD
$FSCK $FSCK_OPT -N test_filesys $TMPFILE > $OUT1.new 2>&1
status=$?
echo Exit status is $status >> $OUT1.new
sed -e '1d' -e '/^JFS DEBUG:/d' $OUT1.new > $OUT1
rm -f $OUT1.new
if [ "$ONE_PASS_ONLY" != "true" ]; then
$FSCK $SECOND_FSCK_OPT -N test_filesys $TMPFILE > $OUT2.new 2>&1
status=$?
echo Exit status is $status >> $OUT2.new
sed -e '1d' $OUT2.new -e '/^JFS DEBUG:/d' > $OUT2
rm -f $OUT2.new
fi
rm $TMPFILE
if [ "$SKIP_VERIFY" != "true" ] ; then
rm -f $test_name.ok $test_name.failed
cmp -s $OUT1 $EXP1
status1=$?
if [ "$ONE_PASS_ONLY" != "true" ]; then
cmp -s $OUT2 $EXP2
status2=$?
else
status2=0
fi
if [ "$status1" = 0 -a "$status2" = 0 ] ; then
echo "ok"
touch $test_name.ok
else
echo "failed"
diff -c $EXP1 $OUT1 > $test_name.failed
if [ "$ONE_PASS_ONLY" != "true" ]; then
diff -c $EXP2 $OUT2 >> $test_name.failed
fi
fi
fi
if [ "$SKIP_CLEANUP" != "true" ] ; then
unset IMAGE FSCK_OPT SECOND_FSCK_OPT OUT1 OUT2 EXP1 EXP2 ONE_PASS_ONLY PREP_CMD
fi