git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v4 7/8] test-lib: allow prefixing a custom string before "ok N" etc.

From
Thomas Rast <trast@inf.ethz.ch>
Date
Jun 23, 2013, 18:12 UTC
Message-ID
<46f94f8f48ebf4a42d3f0f3dbf1566caacd9720c.1372010917.git.trast@inf.ethz.ch>
In-Reply-To
<cover.1372010917.git.trast@inf.ethz.ch>

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>
---
 t/test-lib.sh | 27 +++++++++++++++------------
 1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/t/test-lib.sh b/t/test-lib.sh
index a926828..682459b 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -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
@@ -316,12 +319,12 @@ 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; }
@@ -329,12 +332,12 @@ test_failure_ () {
 
 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 () {
@@ -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
 		;;
 	*)
@@ -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
@@ -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" &&
@@ -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 ;;
-- 
1.8.3.1.727.gcbe3af3
Previous: Thomas RastNext: Thomas Rast
Message 8 of 9 in “--valgrind improvements”
  1. 0/8 --valgrind improvementsThomas Rast, Jun 23, 2013
  2. 1/8 test-lib: enable MALLOC_* for the actual testsThomas Rast, Jun 23, 2013
  3. 2/8 test-lib: refactor $GIT_SKIP_TESTS matchingThomas Rast, Jun 23, 2013
  4. 3/8 test-lib: rearrange start/end of test_expect_* and test_skipThomas Rast, Jun 23, 2013
  5. 4/8 test-lib: self-test that --verbose worksThomas Rast, Jun 23, 2013
  6. 5/8 test-lib: verbose mode for only tests matching a patternThomas Rast, Jun 23, 2013
  7. 6/8 test-lib: valgrind for only tests matching a patternThomas Rast, Jun 23, 2013
  8. 7/8 test-lib: allow prefixing a custom string before "ok N" etc.Thomas Rast, Jun 23, 2013
  9. 8/8 test-lib: support running tests under valgrind in parallelThomas Rast, Jun 23, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.