X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/4df7868d39f4f6c5708dc2fd15af7dcd5a9cbae1..64bd756832d93c0767e72a3432fda29b30d69405:/testsuite/master.test diff --git a/testsuite/master.test b/testsuite/master.test index 4f9f2866..4df5f343 100755 --- a/testsuite/master.test +++ b/testsuite/master.test @@ -14,19 +14,36 @@ # build farm rsync will be installed, but into a scratch /usr. # srcdir gives the location of the source tree, which lets us find the -# build scripts. It might be relative, so we need to make it -# absolute. +# build scripts. At the moment we assume we are invoked from the +# source directory. + +# testdir is a scratch directory for holding temporary test files. # The pwd is undefined when this script starts. -srcdir=`cd $srcdir && pwd` +set -x + +set -e + +if ! [ -d "$testdir" ] && ! mkdir "$testdir" +then + echo "warning: testdir $testdir is not a directory!" >&2 + exit 1 +fi + +testdir=`cd $testdir && pwd` + +echo "srcdir is originally \"$srcdir\"" +if [ "$srcdir" != "" ] +then + srcdir=`cd "$srcdir" && pwd` +fi echo "============================================================" echo "$0 running in `pwd`" echo " rsync_bin=$rsync_bin" echo " srcdir=$srcdir" - -set -e +echo " testdir=$testdir" test_names="rsync-hello hands" @@ -39,12 +56,13 @@ passed=0 failed=0 suitedir="$srcdir/testsuite" -cd "$suitedir" echo " suitedir=$suitedir" +. "$suitedir/config.sh" + for testbase in $test_names do - testscript="./$testbase.test" + testscript="$suitedir/$testbase.test" if test \! -f "$testscript" then echo "$testscript does not exist" >&2 @@ -55,7 +73,7 @@ do echo "------------------------------------------------------------" echo "----- $testbase running" - if sh $testscript + if sh "$testscript" then echo "----- $testbase completed succesfully" passed=`expr $passed + 1` @@ -72,3 +90,10 @@ echo " $failed failed" echo " $skipped skipped" echo " $missing missing" echo '------------------------------------------------------------' + +if test $failed -gt 0 +then + exit 1 +else + exit 0 +fi