t7063: add tests for core.untrackedCache
Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
dae6c322fa
commit
7c121788f4
@ -18,6 +18,10 @@ if ! test_have_prereq UNTRACKED_CACHE; then
|
|||||||
test_done
|
test_done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
test_expect_success 'core.untrackedCache is unset' '
|
||||||
|
test_must_fail git config --get core.untrackedCache
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success 'setup' '
|
test_expect_success 'setup' '
|
||||||
git init worktree &&
|
git init worktree &&
|
||||||
cd worktree &&
|
cd worktree &&
|
||||||
@ -30,13 +34,13 @@ test_expect_success 'setup' '
|
|||||||
|
|
||||||
test_expect_success 'untracked cache is empty' '
|
test_expect_success 'untracked cache is empty' '
|
||||||
test-dump-untracked-cache >../actual &&
|
test-dump-untracked-cache >../actual &&
|
||||||
cat >../expect <<EOF &&
|
cat >../expect-empty <<EOF &&
|
||||||
info/exclude 0000000000000000000000000000000000000000
|
info/exclude 0000000000000000000000000000000000000000
|
||||||
core.excludesfile 0000000000000000000000000000000000000000
|
core.excludesfile 0000000000000000000000000000000000000000
|
||||||
exclude_per_dir .gitignore
|
exclude_per_dir .gitignore
|
||||||
flags 00000006
|
flags 00000006
|
||||||
EOF
|
EOF
|
||||||
test_cmp ../expect ../actual
|
test_cmp ../expect-empty ../actual
|
||||||
'
|
'
|
||||||
|
|
||||||
cat >../status.expect <<EOF &&
|
cat >../status.expect <<EOF &&
|
||||||
@ -506,7 +510,7 @@ EOF
|
|||||||
|
|
||||||
test_expect_success 'verify untracked cache dump (sparse/subdirs)' '
|
test_expect_success 'verify untracked cache dump (sparse/subdirs)' '
|
||||||
test-dump-untracked-cache >../actual &&
|
test-dump-untracked-cache >../actual &&
|
||||||
cat >../expect <<EOF &&
|
cat >../expect-from-test-dump <<EOF &&
|
||||||
info/exclude 13263c0978fb9fad16b2d580fb800b6d811c3ff0
|
info/exclude 13263c0978fb9fad16b2d580fb800b6d811c3ff0
|
||||||
core.excludesfile 0000000000000000000000000000000000000000
|
core.excludesfile 0000000000000000000000000000000000000000
|
||||||
exclude_per_dir .gitignore
|
exclude_per_dir .gitignore
|
||||||
@ -525,7 +529,7 @@ file
|
|||||||
/dtwo/ 0000000000000000000000000000000000000000 recurse check_only valid
|
/dtwo/ 0000000000000000000000000000000000000000 recurse check_only valid
|
||||||
two
|
two
|
||||||
EOF
|
EOF
|
||||||
test_cmp ../expect ../actual
|
test_cmp ../expect-from-test-dump ../actual
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'test sparse status again with untracked cache and subdir' '
|
test_expect_success 'test sparse status again with untracked cache and subdir' '
|
||||||
@ -569,4 +573,77 @@ EOF
|
|||||||
test_cmp ../status.expect ../status.actual
|
test_cmp ../status.expect ../status.actual
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success '--no-untracked-cache removes the cache' '
|
||||||
|
git update-index --no-untracked-cache &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
echo "no untracked cache" >../expect-no-uc &&
|
||||||
|
test_cmp ../expect-no-uc ../actual
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'git status does not change anything' '
|
||||||
|
git status &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-no-uc ../actual
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'setting core.untrackedCache to true and using git status creates the cache' '
|
||||||
|
git config core.untrackedCache true &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-no-uc ../actual &&
|
||||||
|
git status &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-from-test-dump ../actual
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'using --no-untracked-cache does not fail when core.untrackedCache is true' '
|
||||||
|
git update-index --no-untracked-cache &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-no-uc ../actual &&
|
||||||
|
git update-index --untracked-cache &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-empty ../actual
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'setting core.untrackedCache to false and using git status removes the cache' '
|
||||||
|
git config core.untrackedCache false &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-empty ../actual &&
|
||||||
|
git status &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-no-uc ../actual
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'using --untracked-cache does not fail when core.untrackedCache is false' '
|
||||||
|
git update-index --untracked-cache &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-empty ../actual
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'setting core.untrackedCache to keep' '
|
||||||
|
git config core.untrackedCache keep &&
|
||||||
|
git update-index --untracked-cache &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-empty ../actual &&
|
||||||
|
git status &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-from-test-dump ../actual &&
|
||||||
|
git update-index --no-untracked-cache &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-no-uc ../actual &&
|
||||||
|
git update-index --force-untracked-cache &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-empty ../actual &&
|
||||||
|
git status &&
|
||||||
|
test-dump-untracked-cache >../actual &&
|
||||||
|
test_cmp ../expect-from-test-dump ../actual
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'test ident field is working' '
|
||||||
|
mkdir ../other_worktree &&
|
||||||
|
cp -R done dthree dtwo four three ../other_worktree &&
|
||||||
|
GIT_WORK_TREE=../other_worktree git status 2>../err &&
|
||||||
|
echo "warning: Untracked cache is disabled on this system or location." >../expect &&
|
||||||
|
test_cmp ../expect ../err
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
Loading…
Reference in New Issue
Block a user