]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t3701-add-interactive: tighten the check of trace output
authorSZEDER Gábor <szeder.dev@gmail.com>
Mon, 10 Sep 2018 14:07:14 +0000 (16:07 +0200)
committerJunio C Hamano <gitster@pobox.com>
Tue, 11 Sep 2018 20:38:50 +0000 (13:38 -0700)
The test 'add -p does not expand argument lists' in
't3701-add-interactive.sh', added in 7288e12cce (add--interactive: do
not expand pathspecs with ls-files, 2017-03-14), checks the GIT_TRACE
of 'git add -p' to ensure that the name of a tracked file wasn't
passed around as argument to any of the commands executed as a result
of undesired pathspec expansion.  This check is done with 'grep' using
the filename on its own as the pattern, which is too loose a pattern,
and would match any occurrences of the filename in the trace output,
not just those as command arguments.  E.g. if a developer were to
litter the index handling code with trace_printf()s printing, among
other things, the name of the just processed cache entry, then that
pattern would mistakenly match these as well, and would fail the test.

Tighten this 'grep' pattern to only match trace lines that show the
executed commands.

Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t3701-add-interactive.sh

index b170fb02b80356455d03dcf379636778149665a6..14e82f7fb6c1704eb47bc9d5dfc8dab85a79c845 100755 (executable)
@@ -497,7 +497,7 @@ test_expect_success 'add -p does not expand argument lists' '
        # update it, but we want to be sure that our "." pathspec
        # was not expanded into the argument list of any command.
        # So look only for "not-changed".
-       ! grep not-changed trace.out
+       ! grep -E "^trace: (built-in|exec|run_command): .*not-changed" trace.out
 '
 
 test_expect_success 'hunk-editing handles custom comment char' '