From: Karsten Blees Date: Sat, 12 Jul 2014 00:03:01 +0000 (+0200) Subject: trace: disable additional trace output for unit tests X-Git-Tag: v2.1.0-rc0~13^2~9 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/124647c4b007eff04144d75042d9d95f63e303f7?ds=inline;hp=--cc trace: disable additional trace output for unit tests Some unit-tests use trace output to verify internal state, and unstable output such as timestamps and line numbers are not useful there. Disable additional trace output if GIT_TRACE_BARE is set. Signed-off-by: Karsten Blees Signed-off-by: Junio C Hamano --- 124647c4b007eff04144d75042d9d95f63e303f7 diff --git a/t/test-lib.sh b/t/test-lib.sh index 81394c8c7c..e37da5a220 100644 --- a/t/test-lib.sh +++ b/t/test-lib.sh @@ -109,6 +109,10 @@ export GIT_AUTHOR_EMAIL GIT_AUTHOR_NAME export GIT_COMMITTER_EMAIL GIT_COMMITTER_NAME export EDITOR +# Tests using GIT_TRACE typically don't want : output +GIT_TRACE_BARE=1 +export GIT_TRACE_BARE + if test -n "${TEST_GIT_INDEX_VERSION:+isset}" then GIT_INDEX_VERSION="$TEST_GIT_INDEX_VERSION" diff --git a/trace.c b/trace.c index 3d02bcc239..a194b16000 100644 --- a/trace.c +++ b/trace.c @@ -87,11 +87,17 @@ static const char err_msg[] = "Could not trace into fd given by " static int prepare_trace_line(struct trace_key *key, struct strbuf *buf) { + static struct trace_key trace_bare = TRACE_KEY_INIT(BARE); + if (!trace_want(key)) return 0; set_try_to_free_routine(NULL); /* is never reset */ + /* unit tests may want to disable additional trace output */ + if (trace_want(&trace_bare)) + return 1; + /* add line prefix here */ return 1;