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

Re: [PATCH v3 1/6] t7610: unsuppress output

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 25, 2019, 02:31 UTC
Message-ID
<xmqqftq6zugi.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<9f9922cab341396a846edc2f52342c59d294379a.1556142510.git.liu.denton@gmail.com>
Denton Liu <liu.denton@gmail.com> writes:
Show 6 quoted lines
> The output for commands used to be suppressed by redirecting both stdout
> and stderr to /dev/null. However, this should not happen since the
> output is useful for debugging and, without the "-v" flag, test scripts
> don't output anyway.
>
> Unsuppress the output by removing the redirections to /dev/null.
Thanks for clearly justifying the clean-up.

I take it that with this there is no behaviour changes (e.g. a command that may change its behaviour depending on where its standard output goes does not change the outcome of the tests)?

I am not worried about the invocations of "git mergetool" downstream of the pipe that is fed by "yes", and the remainder are a handful of "git merge" invocations, which looked OK to me.

Thanks.
Show 258 quoted lines
> Signed-off-by: Denton Liu <liu.denton@gmail.com>
> ---
>  t/t7610-mergetool.sh | 122 +++++++++++++++++++++----------------------
>  1 file changed, 61 insertions(+), 61 deletions(-)
>
> diff --git a/t/t7610-mergetool.sh b/t/t7610-mergetool.sh
> index a9fb971615..69711487dd 100755
> --- a/t/t7610-mergetool.sh
> +++ b/t/t7610-mergetool.sh
> @@ -130,14 +130,14 @@ test_expect_success 'custom mergetool' '
>  	test_when_finished "git reset --hard" &&
>  	git checkout -b test$test_count branch1 &&
>  	git submodule update -N &&
> -	test_must_fail git merge master >/dev/null 2>&1 &&
> -	( yes "" | git mergetool both >/dev/null 2>&1 ) &&
> +	test_must_fail git merge master &&
> +	( yes "" | git mergetool both ) &&
>  	( yes "" | git mergetool file1 file1 ) &&
> -	( yes "" | git mergetool file2 "spaced name" >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool subdir/file3 >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file11 >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file12 >/dev/null 2>&1 ) &&
> -	( yes "l" | git mergetool submod >/dev/null 2>&1 ) &&
> +	( yes "" | git mergetool file2 "spaced name" ) &&
> +	( yes "" | git mergetool subdir/file3 ) &&
> +	( yes "d" | git mergetool file11 ) &&
> +	( yes "d" | git mergetool file12 ) &&
> +	( yes "l" | git mergetool submod ) &&
>  	test "$(cat file1)" = "master updated" &&
>  	test "$(cat file2)" = "master new" &&
>  	test "$(cat subdir/file3)" = "master new sub" &&
> @@ -153,15 +153,15 @@ test_expect_success 'mergetool crlf' '
>  	# test_when_finished is LIFO.)
>  	test_config core.autocrlf true &&
>  	git checkout -b test$test_count branch1 &&
> -	test_must_fail git merge master >/dev/null 2>&1 &&
> -	( yes "" | git mergetool file1 >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool file2 >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool "spaced name" >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool both >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool subdir/file3 >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file11 >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file12 >/dev/null 2>&1 ) &&
> -	( yes "r" | git mergetool submod >/dev/null 2>&1 ) &&
> +	test_must_fail git merge master &&
> +	( yes "" | git mergetool file1 ) &&
> +	( yes "" | git mergetool file2 ) &&
> +	( yes "" | git mergetool "spaced name" ) &&
> +	( yes "" | git mergetool both ) &&
> +	( yes "" | git mergetool subdir/file3 ) &&
> +	( yes "d" | git mergetool file11 ) &&
> +	( yes "d" | git mergetool file12 ) &&
> +	( yes "r" | git mergetool submod ) &&
>  	test "$(printf x | cat file1 -)" = "$(printf "master updated\r\nx")" &&
>  	test "$(printf x | cat file2 -)" = "$(printf "master new\r\nx")" &&
>  	test "$(printf x | cat subdir/file3 -)" = "$(printf "master new sub\r\nx")" &&
> @@ -176,8 +176,8 @@ test_expect_success 'mergetool in subdir' '
>  	git submodule update -N &&
>  	(
>  		cd subdir &&
> -		test_must_fail git merge master >/dev/null 2>&1 &&
> -		( yes "" | git mergetool file3 >/dev/null 2>&1 ) &&
> +		test_must_fail git merge master &&
> +		( yes "" | git mergetool file3 ) &&
>  		test "$(cat file3)" = "master new sub"
>  	)
>  '
> @@ -188,14 +188,14 @@ test_expect_success 'mergetool on file in parent dir' '
>  	git submodule update -N &&
>  	(
>  		cd subdir &&
> -		test_must_fail git merge master >/dev/null 2>&1 &&
> -		( yes "" | git mergetool file3 >/dev/null 2>&1 ) &&
> -		( yes "" | git mergetool ../file1 >/dev/null 2>&1 ) &&
> -		( yes "" | git mergetool ../file2 ../spaced\ name >/dev/null 2>&1 ) &&
> -		( yes "" | git mergetool ../both >/dev/null 2>&1 ) &&
> -		( yes "d" | git mergetool ../file11 >/dev/null 2>&1 ) &&
> -		( yes "d" | git mergetool ../file12 >/dev/null 2>&1 ) &&
> -		( yes "l" | git mergetool ../submod >/dev/null 2>&1 ) &&
> +		test_must_fail git merge master &&
> +		( yes "" | git mergetool file3 ) &&
> +		( yes "" | git mergetool ../file1 ) &&
> +		( yes "" | git mergetool ../file2 ../spaced\ name ) &&
> +		( yes "" | git mergetool ../both ) &&
> +		( yes "d" | git mergetool ../file11 ) &&
> +		( yes "d" | git mergetool ../file12 ) &&
> +		( yes "l" | git mergetool ../submod ) &&
>  		test "$(cat ../file1)" = "master updated" &&
>  		test "$(cat ../file2)" = "master new" &&
>  		test "$(cat ../submod/bar)" = "branch1 submodule" &&
> @@ -209,9 +209,9 @@ test_expect_success 'mergetool skips autoresolved' '
>  	git submodule update -N &&
>  	test_must_fail git merge master &&
>  	test -n "$(git ls-files -u)" &&
> -	( yes "d" | git mergetool file11 >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file12 >/dev/null 2>&1 ) &&
> -	( yes "l" | git mergetool submod >/dev/null 2>&1 ) &&
> +	( yes "d" | git mergetool file11 ) &&
> +	( yes "d" | git mergetool file12 ) &&
> +	( yes "l" | git mergetool submod ) &&
>  	output="$(git mergetool --no-prompt)" &&
>  	test "$output" = "No files need merging"
>  '
> @@ -259,9 +259,9 @@ test_expect_success 'mergetool skips resolved paths when rerere is active' '
>  	rm -rf .git/rr-cache &&
>  	git checkout -b test$test_count branch1 &&
>  	git submodule update -N &&
> -	test_must_fail git merge master >/dev/null 2>&1 &&
> -	( yes "l" | git mergetool --no-prompt submod >/dev/null 2>&1 ) &&
> -	( yes "d" "d" | git mergetool --no-prompt >/dev/null 2>&1 ) &&
> +	test_must_fail git merge master &&
> +	( yes "l" | git mergetool --no-prompt submod ) &&
> +	( yes "d" "d" | git mergetool --no-prompt ) &&
>  	git submodule update -N &&
>  	output="$(yes "n" | git mergetool --no-prompt)" &&
>  	test "$output" = "No files need merging"
> @@ -369,9 +369,9 @@ test_expect_success 'deleted vs modified submodule' '
>  	git checkout -b test$test_count.a test$test_count &&
>  	test_must_fail git merge master &&
>  	test -n "$(git ls-files -u)" &&
> -	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool both >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file11 file12 >/dev/null 2>&1 ) &&
> +	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 ) &&
> +	( yes "" | git mergetool both ) &&
> +	( yes "d" | git mergetool file11 file12 ) &&
>  	( yes "r" | git mergetool submod ) &&
>  	rmdir submod && mv submod-movedaside submod &&
>  	test "$(cat submod/bar)" = "branch1 submodule" &&
> @@ -386,9 +386,9 @@ test_expect_success 'deleted vs modified submodule' '
>  	git submodule update -N &&
>  	test_must_fail git merge master &&
>  	test -n "$(git ls-files -u)" &&
> -	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool both >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file11 file12 >/dev/null 2>&1 ) &&
> +	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 ) &&
> +	( yes "" | git mergetool both ) &&
> +	( yes "d" | git mergetool file11 file12 ) &&
>  	( yes "l" | git mergetool submod ) &&
>  	test ! -e submod &&
>  	output="$(git mergetool --no-prompt)" &&
> @@ -400,9 +400,9 @@ test_expect_success 'deleted vs modified submodule' '
>  	git submodule update -N &&
>  	test_must_fail git merge test$test_count &&
>  	test -n "$(git ls-files -u)" &&
> -	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool both >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file11 file12 >/dev/null 2>&1 ) &&
> +	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 ) &&
> +	( yes "" | git mergetool both ) &&
> +	( yes "d" | git mergetool file11 file12 ) &&
>  	( yes "r" | git mergetool submod ) &&
>  	test ! -e submod &&
>  	test -d submod.orig &&
> @@ -416,9 +416,9 @@ test_expect_success 'deleted vs modified submodule' '
>  	git submodule update -N &&
>  	test_must_fail git merge test$test_count &&
>  	test -n "$(git ls-files -u)" &&
> -	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool both >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file11 file12 >/dev/null 2>&1 ) &&
> +	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 ) &&
> +	( yes "" | git mergetool both ) &&
> +	( yes "d" | git mergetool file11 file12 ) &&
>  	( yes "l" | git mergetool submod ) &&
>  	test "$(cat submod/bar)" = "master submodule" &&
>  	git submodule update -N &&
> @@ -440,9 +440,9 @@ test_expect_success 'file vs modified submodule' '
>  	git checkout -b test$test_count.a branch1 &&
>  	test_must_fail git merge master &&
>  	test -n "$(git ls-files -u)" &&
> -	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool both >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file11 file12 >/dev/null 2>&1 ) &&
> +	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 ) &&
> +	( yes "" | git mergetool both ) &&
> +	( yes "d" | git mergetool file11 file12 ) &&
>  	( yes "r" | git mergetool submod ) &&
>  	rmdir submod && mv submod-movedaside submod &&
>  	test "$(cat submod/bar)" = "branch1 submodule" &&
> @@ -456,9 +456,9 @@ test_expect_success 'file vs modified submodule' '
>  	git checkout -b test$test_count.b test$test_count &&
>  	test_must_fail git merge master &&
>  	test -n "$(git ls-files -u)" &&
> -	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool both >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file11 file12 >/dev/null 2>&1 ) &&
> +	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 ) &&
> +	( yes "" | git mergetool both ) &&
> +	( yes "d" | git mergetool file11 file12 ) &&
>  	( yes "l" | git mergetool submod ) &&
>  	git submodule update -N &&
>  	test "$(cat submod)" = "not a submodule" &&
> @@ -472,9 +472,9 @@ test_expect_success 'file vs modified submodule' '
>  	git submodule update -N &&
>  	test_must_fail git merge test$test_count &&
>  	test -n "$(git ls-files -u)" &&
> -	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool both >/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file11 file12 >/dev/null 2>&1 ) &&
> +	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 ) &&
> +	( yes "" | git mergetool both ) &&
> +	( yes "d" | git mergetool file11 file12 ) &&
>  	( yes "r" | git mergetool submod ) &&
>  	test -d submod.orig &&
>  	git submodule update -N &&
> @@ -488,9 +488,9 @@ test_expect_success 'file vs modified submodule' '
>  	git submodule update -N &&
>  	test_must_fail git merge test$test_count &&
>  	test -n "$(git ls-files -u)" &&
> -	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 >/dev/null 2>&1 ) &&
> -	( yes "" | git mergetool both>/dev/null 2>&1 ) &&
> -	( yes "d" | git mergetool file11 file12 >/dev/null 2>&1 ) &&
> +	( yes "" | git mergetool file1 file2 spaced\ name subdir/file3 ) &&
> +	( yes "" | git mergetool both ) &&
> +	( yes "d" | git mergetool file11 file12 ) &&
>  	( yes "l" | git mergetool submod ) &&
>  	test "$(cat submod/bar)" = "master submodule" &&
>  	git submodule update -N &&
> @@ -543,7 +543,7 @@ test_expect_success 'submodule in subdirectory' '
>  	git add subdir/subdir_module &&
>  	git commit -m "change submodule in subdirectory on test$test_count.b" &&
>  
> -	test_must_fail git merge test$test_count.a >/dev/null 2>&1 &&
> +	test_must_fail git merge test$test_count.a &&
>  	(
>  		cd subdir &&
>  		( yes "l" | git mergetool subdir_module )
> @@ -554,7 +554,7 @@ test_expect_success 'submodule in subdirectory' '
>  	git reset --hard &&
>  	git submodule update -N &&
>  
> -	test_must_fail git merge test$test_count.a >/dev/null 2>&1 &&
> +	test_must_fail git merge test$test_count.a &&
>  	( yes "r" | git mergetool subdir/subdir_module ) &&
>  	test "$(cat subdir/subdir_module/file15)" = "test$test_count.b" &&
>  	git submodule update -N &&
> @@ -641,7 +641,7 @@ test_expect_success 'filenames seen by tools start with ./' '
>  	test_config mergetool.myecho.trustExitCode true &&
>  	test_must_fail git merge master &&
>  	git mergetool --no-prompt --tool myecho -- both >actual &&
> -	grep ^\./both_LOCAL_ actual >/dev/null
> +	grep ^\./both_LOCAL_ actual
>  '
>  
>  test_lazy_prereq MKTEMP '
> @@ -658,8 +658,8 @@ test_expect_success MKTEMP 'temporary filenames are used with mergetool.writeToT
>  	test_config mergetool.myecho.trustExitCode true &&
>  	test_must_fail git merge master &&
>  	git mergetool --no-prompt --tool myecho -- both >actual &&
> -	! grep ^\./both_LOCAL_ actual >/dev/null &&
> -	grep /both_LOCAL_ actual >/dev/null
> +	! grep ^\./both_LOCAL_ actual &&
> +	grep /both_LOCAL_ actual
>  '
>  
>  test_expect_success 'diff.orderFile configuration is honored' '
Previous: Denton LiuNext: Denton Liu
Message 22 of 48 in “difftool and mergetool improvements”
  1. 0/5 difftool and mergetool improvementsDenton Liu, Apr 22, 2019
  2. 1/5 t7610: add mergetool --gui testsDenton Liu, Apr 22, 2019
  3. 2/5 mergetool: use get_merge_tool functionDenton Liu, Apr 22, 2019
  4. Eric SunshineApr 22, 2019
  5. Denton LiuApr 22, 2019
  6. 3/5 mergetool: fallback to tool when guitool unavailableDenton Liu, Apr 22, 2019
  7. 4/5 difftool: make --gui, --tool and --extcmd exclusiveDenton Liu, Apr 22, 2019
  8. Eric SunshineApr 22, 2019
  9. 5/5 difftool: fallback on merge.guitoolDenton Liu, Apr 22, 2019
  10. Jeff HostetlerApr 22, 2019
  11. Denton LiuApr 22, 2019
  12. 0/5 difftool and mergetool improvementsDenton Liu, Apr 23, 2019
  13. 1/5 t7610: add mergetool --gui testsDenton Liu, Apr 23, 2019
  14. Junio C HamanoApr 24, 2019
  15. 2/5 mergetool: use get_merge_tool_guessed functionDenton Liu, Apr 23, 2019
  16. Junio C HamanoApr 24, 2019
  17. 3/5 mergetool: fallback to tool when guitool unavailableDenton Liu, Apr 23, 2019
  18. 4/5 difftool: make --gui, --tool and --extcmd mutually exclusiveDenton Liu, Apr 23, 2019
  19. 5/5 difftool: fallback on merge.guitoolDenton Liu, Apr 23, 2019
  20. 0/6 difftool and mergetool improvementsDenton Liu, Apr 24, 2019
  21. 1/6 t7610: unsuppress outputDenton Liu, Apr 24, 2019
  22. Junio C HamanoApr 25, 2019
  23. 2/6 t7610: add mergetool --gui testsDenton Liu, Apr 24, 2019
  24. 3/6 mergetool: use get_merge_tool functionDenton Liu, Apr 24, 2019
  25. Junio C HamanoApr 25, 2019
  26. 4/6 mergetool: fallback to tool when guitool unavailableDenton Liu, Apr 24, 2019
  27. Junio C HamanoApr 25, 2019
  28. Denton LiuApr 25, 2019
  29. 5/6 difftool: make --gui, --tool and --extcmd mutually exclusiveDenton Liu, Apr 24, 2019
  30. 6/6 difftool: fallback on merge.guitoolDenton Liu, Apr 24, 2019
  31. Junio C HamanoApr 25, 2019
  32. 0/6 difftool and mergetool improvementsDenton Liu, Apr 25, 2019
  33. 1/6 t7610: unsuppress outputDenton Liu, Apr 25, 2019
  34. 2/6 t7610: add mergetool --gui testsDenton Liu, Apr 25, 2019
  35. 3/6 mergetool: use get_merge_tool functionDenton Liu, Apr 25, 2019
  36. David AguilarApr 28, 2019
  37. 4/6 mergetool: fallback to tool when guitool unavailableDenton Liu, Apr 25, 2019
  38. David AguilarApr 28, 2019
  39. 5/6 difftool: make --gui, --tool and --extcmd mutually exclusiveDenton Liu, Apr 25, 2019
  40. 6/6 difftool: fallback on merge.guitoolDenton Liu, Apr 25, 2019
  41. 0/7 difftool and mergetool improvementsDenton Liu, Apr 29, 2019
  42. 1/7 t7610: unsuppress outputDenton Liu, Apr 29, 2019
  43. 2/7 t7610: add mergetool --gui testsDenton Liu, Apr 29, 2019
  44. 3/7 mergetool: use get_merge_tool functionDenton Liu, Apr 29, 2019
  45. 4/7 mergetool--lib: create gui_mode functionDenton Liu, Apr 29, 2019
  46. 5/7 mergetool: fallback to tool when guitool unavailableDenton Liu, Apr 29, 2019
  47. 6/7 difftool: make --gui, --tool and --extcmd mutually exclusiveDenton Liu, Apr 29, 2019
  48. 7/7 difftool: fallback on merge.guitoolDenton Liu, Apr 29, 2019

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.