summaryrefslogtreecommitdiffabout
path: root/tests/setup.sh
Side-by-side diff
Diffstat (limited to 'tests/setup.sh') (more/less context) (ignore whitespace changes)
-rwxr-xr-xtests/setup.sh18
1 files changed, 13 insertions, 5 deletions
diff --git a/tests/setup.sh b/tests/setup.sh
index 51d5a75..66bf406 100755
--- a/tests/setup.sh
+++ b/tests/setup.sh
@@ -53,9 +53,11 @@ summary-branches=5
summary-tags=5
repo.url=foo
repo.path=$PWD/trash/repos/foo/.git
-repo.desc=the foo repo
+# Do not specify a description for this repo, as it then will be assigned
+# the constant value "[no description]" (which actually used to cause a
+# segfault).
repo.url=bar
repo.path=$PWD/trash/repos/bar/.git
repo.desc=the bar repo
@@ -64,19 +66,22 @@ EOF
prepare_tests()
{
setup_repos
+ rm -f test-output.log 2>/dev/null
test_count=0
test_failed=0
+ echo "[$0]" "$@" >test-output.log
echo "$@" "($0)"
}
tests_done()
{
printf "\n"
if test $test_failed -gt 0
then
- printf "[%s of %s tests failed]\n" $test_failed $test_count
+ printf "test: *** %s failure(s), logfile=%s\n" \
+ $test_failed "$(pwd)/test-output.log"
false
fi
}
@@ -84,16 +89,19 @@ run_test()
{
desc=$1
script=$2
((test_count++))
- eval "$2" >test-output.log
+ printf "\ntest %d: name='%s'\n" $test_count "$desc" >>test-output.log
+ printf "test %d: eval='%s'\n" $test_count "$2" >>test-output.log
+ eval "$2" >>test-output.log 2>>test-output.log
res=$?
+ printf "test %d: exitcode=%d\n" $test_count $res >>test-output.log
if test $res = 0
then
- printf " %s: ok - %s\n" $test_count "$desc"
+ printf " %2d) %-60s [ok]\n" $test_count "$desc"
else
((test_failed++))
- printf " %s: fail - %s\n" $test_count "$desc"
+ printf " %2d) %-60s [failed]\n" $test_count "$desc"
fi
}
cgit_query()