summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2015-03-13 00:50:56 -0400
committerJunio C Hamano <gitster@pobox.com>2015-03-12 23:24:34 -0700
commit025232e8aa4b56d450079528fcfbff53da3e7fa4 (patch)
tree1e8e8162515f4acf16139411093969635df2b1e2
parentda706545f7a1fa97cd8d9cf40659ab2a167be7c0 (diff)
downloadgit-025232e8aa4b56d450079528fcfbff53da3e7fa4.tar.gz
t: redirect stderr GIT_TRACE to descriptor 4
If you run a test script like: GIT_TRACE=1 ./t0061-run-command.sh you may get test failures, because some tests capture and check the stderr output from git commands (and with GIT_TRACE set to 1, the trace output will be included there). When we see GIT_TRACE set like this, we print a warning to the user. However, we can do even better than that by just pointing it to descriptor 4, which all tests leave connected to the test script's stderr. That's likely what the user intended (and any scripts that do want to see GIT_TRACE output will set GIT_TRACE themselves). Not only does this avoid false negatives in the tests, but it means the user will actually see trace output for git calls that redirect their stderr (whereas before, it was sometimes confusingly buried in a file). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--t/test-lib.sh5
1 files changed, 1 insertions, 4 deletions
diff --git a/t/test-lib.sh b/t/test-lib.sh
index f4ba3ff972..7dd4b4d1c2 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -152,10 +152,7 @@ unset UNZIP
case $(echo $GIT_TRACE |tr "[A-Z]" "[a-z]") in
1|2|true)
- echo "* warning: Some tests will not work if GIT_TRACE" \
- "is set as to trace on STDERR ! *"
- echo "* warning: Please set GIT_TRACE to something" \
- "other than 1, 2 or true ! *"
+ GIT_TRACE=4
;;
esac