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

[PATCH 05/11] t5500-fetch-pack: don't check the stderr of a subshell

From
SZEDER Gábor <szeder.dev@gmail.com>
Date
Feb 23, 2018, 23:39 UTC
Message-ID
<20180223233951.11154-6-szeder.dev@gmail.com>
In-Reply-To
<20180223233951.11154-1-szeder.dev@gmail.com>

Three "missing reference" tests in 't5500-fetch-pack.sh' fail when the test script is run with '-x' tracing (and using a shell other than a Bash version supporting BASH_XTRACEFD). The reason for those failures is that the tests check a subshell's stderr, which includes the trace of executing commands in that subshell as well, throwing off the comparison with the expected output.

Save the stderr of 'git fetch-pack' only instead of the whole subshell, so it remains free from tracing output.

After this change t5500 passes with '-x', even when running with /bin/sh.

Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
---
 t/t5500-fetch-pack.sh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/t/t5500-fetch-pack.sh b/t/t5500-fetch-pack.sh
index ec9ba9bf6e..0680dec808 100755
--- a/t/t5500-fetch-pack.sh
+++ b/t/t5500-fetch-pack.sh
@@ -482,24 +482,24 @@ test_expect_success 'set up tests of missing reference' '
 test_expect_success 'test lonely missing ref' '
 	(
 		cd client &&
-		test_must_fail git fetch-pack --no-progress .. refs/heads/xyzzy
-	) >/dev/null 2>error-m &&
+		test_must_fail git fetch-pack --no-progress .. refs/heads/xyzzy 2>../error-m
+	) &&
 	test_i18ncmp expect-error error-m
 '
 
 test_expect_success 'test missing ref after existing' '
 	(
 		cd client &&
-		test_must_fail git fetch-pack --no-progress .. refs/heads/A refs/heads/xyzzy
-	) >/dev/null 2>error-em &&
+		test_must_fail git fetch-pack --no-progress .. refs/heads/A refs/heads/xyzzy 2>../error-em
+	) &&
 	test_i18ncmp expect-error error-em
 '
 
 test_expect_success 'test missing ref before existing' '
 	(
 		cd client &&
-		test_must_fail git fetch-pack --no-progress .. refs/heads/xyzzy refs/heads/A
-	) >/dev/null 2>error-me &&
+		test_must_fail git fetch-pack --no-progress .. refs/heads/xyzzy refs/heads/A 2>../error-me
+	) &&
 	test_i18ncmp expect-error error-me
 '
 
-- 
2.16.2.400.g911b7cc0da
Previous: SZEDER GáborNext: SZEDER Gábor
Message 7 of 26 in “Make the test suite pass with '-x' and /bin/sh”
  1. 00/11 Make the test suite pass with '-x' and /bin/shSZEDER Gábor, Feb 23, 2018
  2. 02/11 t: add means to disable '-x' tracing for individual test scriptsSZEDER Gábor, Feb 23, 2018
  3. 01/11 t: prevent '-x' tracing from interfering with test helpers' stderrSZEDER Gábor, Feb 23, 2018
  4. SZEDER GáborFeb 24, 2018
  5. t: prevent '-x' tracing from interfering with test helpers' stderrSZEDER Gábor, Feb 25, 2018
  6. 03/11 t1507-rev-parse-upstream: don't check the stderr of a shell functionSZEDER Gábor, Feb 23, 2018
  7. 05/11 t5500-fetch-pack: don't check the stderr of a subshellSZEDER Gábor, Feb 23, 2018
  8. 07/11 t5570-git-daemon: don't check the stderr of a subshellSZEDER Gábor, Feb 23, 2018
  9. 11/11 travis-ci: run tests with '-x' tracingSZEDER Gábor, Feb 23, 2018
  10. 04/11 t3030-merge-recursive: don't check the stderr of a subshellSZEDER Gábor, Feb 23, 2018
  11. Eric SunshineFeb 24, 2018
  12. Junio C HamanoFeb 27, 2018
  13. Junio C HamanoFeb 27, 2018
  14. test_must_be_empty: make sure the file exists, not just emptyJunio C Hamano, Feb 27, 2018
  15. Stefan BellerFeb 27, 2018
  16. Jeff KingFeb 27, 2018
  17. SZEDER GáborFeb 27, 2018
  18. Junio C HamanoFeb 27, 2018
  19. SZEDER GáborFeb 28, 2018
  20. 10/11 t/README: add a note about don't saving stderr of compound commandsSZEDER Gábor, Feb 23, 2018
  21. 08/11 t9903-bash-prompt: don't check the stderr of __git_ps1()SZEDER Gábor, Feb 23, 2018
  22. 06/11 t5526: use $TRASH_DIRECTORY to specify the path of GIT_TRACE log fileSZEDER Gábor, Feb 23, 2018
  23. 09/11 t1510-repo-setup: mark as untraceable with '-x'SZEDER Gábor, Feb 23, 2018
  24. SZEDER GáborMar 2, 2018
  25. Jeff KingMar 3, 2018
  26. SZEDER GáborMar 5, 2018

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.