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>
This commit is contained in:
Nguyễn Thái Ngọc Duy 2010-01-04 19:34:15 +07:00 committed by Junio C Hamano
parent cd83ac4156
commit 8740773ee5
2 changed files with 13 additions and 0 deletions

View File

@ -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;

View File

@ -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