summaryrefslogtreecommitdiffabout
authorLars Hjemli <hjemli@gmail.com>2008-02-24 18:53:51 (UTC)
committer Lars Hjemli <hjemli@gmail.com>2008-02-24 19:25:20 (UTC)
commit538cb4a7d73ee2e62f41f2a452dccf89ba5004d9 (patch) (unidiff)
tree7cfe91f5d4002570d8250740648bbe02e6dc641f
parent20cdffd5e086ebfb8ba6a82ab98ab27276657111 (diff)
downloadcgit-538cb4a7d73ee2e62f41f2a452dccf89ba5004d9.zip
cgit-538cb4a7d73ee2e62f41f2a452dccf89ba5004d9.tar.gz
cgit-538cb4a7d73ee2e62f41f2a452dccf89ba5004d9.tar.bz2
tests/setup.sh: cleanup test script output and logging
Log the complete output from each test-script in test-output.log and tell the user about the logfile when a test-script fails. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (more/less context) (ignore whitespace changes)
-rwxr-xr-xtests/setup.sh10
1 files changed, 8 insertions, 2 deletions
diff --git a/tests/setup.sh b/tests/setup.sh
index 5f20286..66bf406 100755
--- a/tests/setup.sh
+++ b/tests/setup.sh
@@ -58,46 +58,52 @@ repo.path=$PWD/trash/repos/foo/.git
58# the constant value "[no description]" (which actually used to cause a 58# the constant value "[no description]" (which actually used to cause a
59# segfault). 59# segfault).
60 60
61repo.url=bar 61repo.url=bar
62repo.path=$PWD/trash/repos/bar/.git 62repo.path=$PWD/trash/repos/bar/.git
63repo.desc=the bar repo 63repo.desc=the bar repo
64EOF 64EOF
65} 65}
66 66
67prepare_tests() 67prepare_tests()
68{ 68{
69 setup_repos 69 setup_repos
70 rm -f test-output.log 2>/dev/null
70 test_count=0 71 test_count=0
71 test_failed=0 72 test_failed=0
73 echo "[$0]" "$@" >test-output.log
72 echo "$@" "($0)" 74 echo "$@" "($0)"
73} 75}
74 76
75tests_done() 77tests_done()
76{ 78{
77 printf "\n" 79 printf "\n"
78 if test $test_failed -gt 0 80 if test $test_failed -gt 0
79 then 81 then
80 printf "[%s of %s tests failed]\n" $test_failed $test_count 82 printf "test: *** %s failure(s), logfile=%s\n" \
83 $test_failed "$(pwd)/test-output.log"
81 false 84 false
82 fi 85 fi
83} 86}
84 87
85run_test() 88run_test()
86{ 89{
87 desc=$1 90 desc=$1
88 script=$2 91 script=$2
89 ((test_count++)) 92 ((test_count++))
90 eval "$2" >test-output.log 93 printf "\ntest %d: name='%s'\n" $test_count "$desc" >>test-output.log
94 printf "test %d: eval='%s'\n" $test_count "$2" >>test-output.log
95 eval "$2" >>test-output.log 2>>test-output.log
91 res=$? 96 res=$?
97 printf "test %d: exitcode=%d\n" $test_count $res >>test-output.log
92 if test $res = 0 98 if test $res = 0
93 then 99 then
94 printf " %2d) %-60s [ok]\n" $test_count "$desc" 100 printf " %2d) %-60s [ok]\n" $test_count "$desc"
95 else 101 else
96 ((test_failed++)) 102 ((test_failed++))
97 printf " %2d) %-60s [failed]\n" $test_count "$desc" 103 printf " %2d) %-60s [failed]\n" $test_count "$desc"
98 fi 104 fi
99} 105}
100 106
101cgit_query() 107cgit_query()
102{ 108{
103 CGIT_CONFIG="$PWD/trash/cgitrc" QUERY_STRING="$1" "$PWD/../cgit" 109 CGIT_CONFIG="$PWD/trash/cgitrc" QUERY_STRING="$1" "$PWD/../cgit"