diff options
author | SZEDER Gábor <szeder.dev@gmail.com> | 2018-02-24 00:39:44 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-02-28 12:57:51 -0800 |
commit | 40dc533f5776aa0fe194176032f7eb38ee5f44b7 (patch) | |
tree | 477dab44637e33e5ab34a5ada01109f25be759f2 /t/annotate-tests.sh | |
parent | t1507-rev-parse-upstream: don't check the stderr of a shell function (diff) | |
download | tgif-40dc533f5776aa0fe194176032f7eb38ee5f44b7.tar.xz |
t3030-merge-recursive: don't check the stderr of a subshell
The two test checking 'git mmerge-recursive' in an empty worktree in
't3030-merge-recursive.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
the emptiness of a subshell's stderr, which includes the trace of
commands executed in that subshell as well, throwing off the emptiness
check.
Note that both subshells execute four git commands each, meaning that
checking the emptiness of the whole subshell implicitly ensures that
not only 'git merge-recursive' but none of the other three commands
outputs anything to their stderr. Note also that if one of those
commands were to output anything on its stderr, then the current
combined check would not tell us which one of those four commands the
unexpected output came from.
Save the stderr of those four commands only instead of the whole
subshell, so it remains free from tracing output, and save and check
them individually, so they will show us from which command the
unexpected output came from.
After this change t3030 passes with '-x', even when running with
/bin/sh.
Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/annotate-tests.sh')
0 files changed, 0 insertions, 0 deletions