Browse Source

t7002: test for not using external grep on skip-worktree paths

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Nguyễn Thái Ngọc Duy 15 years ago committed by Junio C Hamano
parent
commit
8740773ee5
  1. 1
      builtin-grep.c
  2. 12
      t/t7002-grep.sh

1
builtin-grep.c

@ -232,6 +232,7 @@ static int exec_grep(int argc, const char **argv) @@ -232,6 +232,7 @@ static int exec_grep(int argc, const char **argv)
int status;

argv[argc] = NULL;
trace_argv_printf(argv, "trace: grep:");
pid = fork();
if (pid < 0)
return pid;

12
t/t7002-grep.sh

@ -340,4 +340,16 @@ test_expect_success 'grep -p -B5' ' @@ -340,4 +340,16 @@ test_expect_success 'grep -p -B5' '
test_cmp expected actual
'

test_expect_success EXTGREP 'external grep is called' '
GIT_TRACE=2 git grep foo >/dev/null 2>actual &&
grep "trace: grep:.*foo" actual >/dev/null
'

test_expect_success EXTGREP 'no external grep when skip-worktree entries exist' '
git update-index --skip-worktree file &&
GIT_TRACE=2 git grep foo >/dev/null 2>actual &&
! grep "trace: grep:" actual >/dev/null &&
git update-index --no-skip-worktree file
'

test_done

Loading…
Cancel
Save