mirror of https://github.com/vitalif/e2fsprogs
72 lines
1.4 KiB
Bash
72 lines
1.4 KiB
Bash
#!/bin/sh
|
|
#
|
|
# Test script for e2fsck
|
|
#
|
|
|
|
case "$1" in
|
|
--valgrind)
|
|
export USE_VALGRIND="valgrind -q --weird-hacks=lax-ioctls"
|
|
shift;
|
|
esac
|
|
|
|
if test "$1"x = x ; then
|
|
TESTS=`ls -d $SRCDIR/[a-zA-Z]_* | $EGREP -v "\.failed|\.new"`
|
|
else
|
|
TESTS=
|
|
for i
|
|
do
|
|
case $i in
|
|
*.failed|*.new) continue ;;
|
|
[a-zA-Z]) TESTS="$TESTS $SRCDIR/${i}_*" ;;
|
|
*) TESTS="$TESTS $SRCDIR/$i" ;;
|
|
esac
|
|
done
|
|
fi
|
|
|
|
cmd_dir=$SRCDIR
|
|
|
|
if test "$TEST_CONFIG"x = x; then
|
|
TEST_CONFIG=$SRCDIR/test_config
|
|
fi
|
|
|
|
. $TEST_CONFIG
|
|
|
|
for test_dir in $TESTS
|
|
do
|
|
test_name=`echo $test_dir | sed -e 's;.*/;;'`
|
|
if [ -f $test_dir ] ; then
|
|
continue;
|
|
fi
|
|
if [ ! -d $test_dir ] ; then
|
|
echo "The test '$test_name' does not exist."
|
|
continue;
|
|
fi
|
|
if [ -z "`ls $test_dir`" ]; then
|
|
continue
|
|
fi
|
|
if [ -f $test_dir/name ]; then
|
|
test_description=`cat $test_dir/name`
|
|
printf "%s: %s: " "$test_name" "$test_description"
|
|
else
|
|
printf "%s: " "$test_name"
|
|
fi
|
|
if [ -f $test_dir/script ]; then
|
|
. $test_dir/script
|
|
else
|
|
test_base=`echo $test_name | sed -e 's/_.*//'`
|
|
default_script=$SRCDIR/defaults/${test_base}_script
|
|
if [ -f $default_script ]; then
|
|
. $SRCDIR/defaults/${test_base}_script
|
|
else
|
|
echo "Missing test script!"
|
|
fi
|
|
fi
|
|
done
|
|
|
|
num_ok=`ls *.ok 2>/dev/null | wc -l`
|
|
num_failed=`ls *.failed 2>/dev/null | wc -l`
|
|
|
|
echo "$num_ok tests succeeded $num_failed tests failed"
|
|
|
|
test "$num_failed" -eq 0 || exit 1
|