summaryrefslogtreecommitdiff
path: root/testcode/mini_tdir.sh
diff options
context:
space:
mode:
Diffstat (limited to 'testcode/mini_tdir.sh')
-rwxr-xr-xtestcode/mini_tdir.sh38
1 files changed, 27 insertions, 11 deletions
diff --git a/testcode/mini_tdir.sh b/testcode/mini_tdir.sh
index 6bbece8d9368..624ecdf7fe5b 100755
--- a/testcode/mini_tdir.sh
+++ b/testcode/mini_tdir.sh
@@ -8,6 +8,7 @@ fi
# This will keep the temporary directory around and return 1 when the test failed.
DEBUG=0
+test -n "$DEBUG_TDIR" && DEBUG=1
quiet=0
if test "$1" = "-q"; then
@@ -17,9 +18,9 @@ fi
if test "$1" = "clean"; then
if test $quiet = 0; then
- echo "rm -f result.* .done* .tdir.var.master .tdir.var.test"
+ echo "rm -f result.* .done* .skip* .tdir.var.master .tdir.var.test"
fi
- rm -f result.* .done* .tdir.var.master .tdir.var.test
+ rm -f result.* .done* .skip* .tdir.var.master .tdir.var.test
exit 0
fi
if test "$1" = "fake"; then
@@ -54,12 +55,15 @@ if test "$1" = "-f" && test "$2" = "report"; then
echo "** PASSED ** $timelen $name: $desc"
pass=`expr $pass + 1`
fi
+ elif test -f ".skip-$name"; then
+ echo ".. SKIPPED.. $timelen $name: $desc"
+ skip=`expr $skip + 1`
else
if test -f "result.$name"; then
echo "!! FAILED !! $timelen $name: $desc"
fail=`expr $fail + 1`
else
- echo ".> SKIPPED<< $timelen $name: $desc"
+ echo ".. SKIPPED.. $timelen $name: $desc"
skip=`expr $skip + 1`
fi
fi
@@ -81,11 +85,17 @@ if test "$1" = "report" || test "$2" = "report"; then
if test $quiet = 0; then
echo "** PASSED ** : $name"
fi
+ elif test -f ".skip-$name"; then
+ if test $quiet = 0; then
+ echo ".. SKIPPED.. : $name"
+ fi
else
if test -f "result.$name"; then
echo "!! FAILED !! : $name"
else
- echo ">> SKIPPED<< : $name"
+ if test $quiet = 0; then
+ echo ".. SKIPPED.. : $name"
+ fi
fi
fi
done
@@ -116,6 +126,7 @@ name=`basename $1 .tdir`
dir=$name.$$
result=result.$name
done=.done-$name
+skip=.skip-$name
success="no"
if test -x "`which bash`"; then
shell="bash"
@@ -124,8 +135,8 @@ else
fi
# check already done
-if test -f .done-$name; then
- echo "minitdir .done-$name exists. skip test."
+if test -f $done; then
+ echo "minitdir $done exists. skip test."
exit 0
fi
@@ -151,11 +162,16 @@ if test -f $name.pre; then
fi
echo "minitdir exe $name.pre" >> $result
$shell $name.pre $args >> $result
- if test $? -ne 0; then
+ exit_value=$?
+ if test $exit_value -eq 3; then
+ echo "$name: SKIPPED" >> $result
+ echo "$name: SKIPPED" > ../$skip
+ echo "$name: SKIPPED"
+ elif test $exit_value -ne 0; then
echo "Warning: $name.pre did not exit successfully"
fi
fi
-if test -f $name.test; then
+if test -f $name.test -a ! -f ../$skip; then
if test $quiet = 0; then
echo "minitdir exe $name.test"
fi
@@ -167,14 +183,14 @@ if test -f $name.test; then
success="no"
else
echo "$name: PASSED" >> $result
- echo "$name: PASSED" > ../.done-$name
+ echo "$name: PASSED" > ../$done
if test $quiet = 0; then
echo "$name: PASSED"
fi
success="yes"
fi
fi
-if test -f $name.post; then
+if test -f $name.post -a ! -f ../$skip; then
if test $quiet = 0; then
echo "minitdir exe $name.post"
fi
@@ -198,7 +214,7 @@ if test $DEBUG -eq 0; then
rm -rf $dir
fi
else
- if test $success == "no"; then
+ if test $success = "no"; then
exit 1
fi
exit 0