Modify test-lib.sh to output stats to t/test-results/*

This change is needed order to aggregate data on the test run later on.

Signed-off-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Sverre Rabbelier 2008-06-08 16:04:33 +02:00 committed by Junio C Hamano
parent 218bf69f0b
commit 2d84e9fb6d
2 changed files with 15 additions and 2 deletions

View file

@ -20,7 +20,7 @@ $(T):
@echo "*** $@ ***"; GIT_CONFIG=.git/config '$(SHELL_PATH_SQ)' $@ $(GIT_TEST_OPTS) @echo "*** $@ ***"; GIT_CONFIG=.git/config '$(SHELL_PATH_SQ)' $@ $(GIT_TEST_OPTS)
clean: clean:
$(RM) -r 'trash directory' $(RM) -r 'trash directory' test-results
# we can test NO_OPTIMIZE_COMMITS independently of LC_ALL # we can test NO_OPTIMIZE_COMMITS independently of LC_ALL
full-svn-test: full-svn-test:

View file

@ -152,6 +152,7 @@ test_failure=0
test_count=0 test_count=0
test_fixed=0 test_fixed=0
test_broken=0 test_broken=0
test_success=0
die () { die () {
echo >&5 "FATAL: Unexpected exit with code $?" echo >&5 "FATAL: Unexpected exit with code $?"
@ -193,6 +194,7 @@ test_tick () {
test_ok_ () { test_ok_ () {
test_count=$(expr "$test_count" + 1) test_count=$(expr "$test_count" + 1)
test_success=$(expr "$test_success" + 1)
say_color "" " ok $test_count: $@" say_color "" " ok $test_count: $@"
} }
@ -353,6 +355,16 @@ test_create_repo () {
test_done () { test_done () {
trap - exit trap - exit
test_results_dir="$TEST_DIRECTORY/test-results"
mkdir -p "$test_results_dir"
test_results_path="$test_results_dir/${0%-*}-$$"
echo "total $test_count" >> $test_results_path
echo "success $test_success" >> $test_results_path
echo "fixed $test_fixed" >> $test_results_path
echo "broken $test_broken" >> $test_results_path
echo "failed $test_failure" >> $test_results_path
echo "" >> $test_results_path
if test "$test_fixed" != 0 if test "$test_fixed" != 0
then then
@ -387,7 +399,8 @@ test_done () {
# Test the binaries we have just built. The tests are kept in # Test the binaries we have just built. The tests are kept in
# t/ subdirectory and are run in trash subdirectory. # t/ subdirectory and are run in trash subdirectory.
PATH=$(pwd)/..:$PATH TEST_DIRECTORY=$(pwd)
PATH=$TEST_DIRECTORY/..:$PATH
GIT_EXEC_PATH=$(pwd)/.. GIT_EXEC_PATH=$(pwd)/..
GIT_TEMPLATE_DIR=$(pwd)/../templates/blt GIT_TEMPLATE_DIR=$(pwd)/../templates/blt
unset GIT_CONFIG unset GIT_CONFIG