#!/bin/sh # # Test script for e2fsck # LC_ALL=C export LC_ALL case "$1" in --valgrind) export USE_VALGRIND="valgrind -q --sim-hints=lax-ioctls" shift; ;; --valgrind-leakcheck) export USE_VALGRIND="valgrind --sim-hints=lax-ioctls --leak-check=full --show-reachable=yes --log-file=/tmp/valgrind-%p.log" 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