Skip to content

Commit

Permalink
test-lib: allow prefixing a custom string before "ok N" etc.
Browse files Browse the repository at this point in the history
This is not really meant for external use, and thus not documented. It
allows the next commit to neatly distinguish between sub-tests and the
main run.

The format is intentionally not valid TAP.  The use in the next commit
would not result in anything valid either way, and it seems better to
make it obvious.

Signed-off-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Thomas Rast authored and Junio C Hamano committed Jun 23, 2013
1 parent 5dfc368 commit e939e15
Showing 1 changed file with 15 additions and 12 deletions.
27 changes: 15 additions & 12 deletions t/test-lib.sh
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,9 @@ do
--root=*)
root=$(expr "z$1" : 'z[^=]*=\(.*\)')
shift ;;
--statusprefix=*)
statusprefix=$(expr "z$1" : 'z[^=]*=\(.*\)')
shift ;;
*)
echo "error: unknown test option '$1'" >&2; exit 1 ;;
esac
Expand Down Expand Up @@ -316,25 +319,25 @@ trap 'die' EXIT

test_ok_ () {
test_success=$(($test_success + 1))
say_color "" "ok $test_count - $@"
say_color "" "${statusprefix}ok $test_count - $@"
}

test_failure_ () {
test_failure=$(($test_failure + 1))
say_color error "not ok $test_count - $1"
say_color error "${statusprefix}not ok $test_count - $1"
shift
echo "$@" | sed -e 's/^/# /'
test "$immediate" = "" || { GIT_EXIT_OK=t; exit 1; }
}

test_known_broken_ok_ () {
test_fixed=$(($test_fixed+1))
say_color error "ok $test_count - $@ # TODO known breakage vanished"
say_color error "${statusprefix}ok $test_count - $@ # TODO known breakage vanished"
}

test_known_broken_failure_ () {
test_broken=$(($test_broken+1))
say_color warn "not ok $test_count - $@ # TODO known breakage"
say_color warn "${statusprefix}not ok $test_count - $@ # TODO known breakage"
}

test_debug () {
Expand Down Expand Up @@ -458,8 +461,8 @@ test_skip () {
of_prereq=" of $test_prereq"
fi

say_color skip >&3 "skipping test: $@"
say_color skip "ok $test_count # skip $1 (missing $missing_prereq${of_prereq})"
say_color skip >&3 "${statusprefix}skipping test: $@"
say_color skip "${statusprefix}ok $test_count # skip $1 (missing $missing_prereq${of_prereq})"
: true
;;
*)
Expand Down Expand Up @@ -497,11 +500,11 @@ test_done () {

if test "$test_fixed" != 0
then
say_color error "# $test_fixed known breakage(s) vanished; please update test(s)"
say_color error "${statusprefix}# $test_fixed known breakage(s) vanished; please update test(s)"
fi
if test "$test_broken" != 0
then
say_color warn "# still have $test_broken known breakage(s)"
say_color warn "${statusprefix}# still have $test_broken known breakage(s)"
fi
if test "$test_broken" != 0 || test "$test_fixed" != 0
then
Expand All @@ -524,9 +527,9 @@ test_done () {
then
if test $test_remaining -gt 0
then
say_color pass "# passed all $msg"
say_color pass "${statusprefix}# passed all $msg"
fi
say "1..$test_count$skip_all"
say "${statusprefix}1..$test_count$skip_all"
fi

test -d "$remove_trash" &&
Expand All @@ -540,8 +543,8 @@ test_done () {
*)
if test $test_external_has_tap -eq 0
then
say_color error "# failed $test_failure among $msg"
say "1..$test_count"
say_color error "${statusprefix}# failed $test_failure among $msg"
say "${statusprefix}1..$test_count"
fi

exit 1 ;;
Expand Down

0 comments on commit e939e15

Please sign in to comment.