Subject: Re: [PATCH] status: add a failing test showing a core.untrackedCache bug

From: Junio C Hamano <[email-masked]>
Date: Wed, 27 Dec 2017 10:09:23 -0800

Ævar Arnfjörð Bjarmason  <[email-masked]> writes:

> +status_is_clean() {
> +	>../status.expect &&
> +	git status --porcelain >../status.actual &&
> +	test_cmp ../status.expect ../status.actual
> +}
> +
>  test_lazy_prereq UNTRACKED_CACHE '
>  	{ git update-index --test-untracked-cache; ret=$?; } &&
>  	test $ret -ne 1
> @@ -683,4 +689,43 @@ test_expect_success 'untracked cache survives a commit' '
>  	test_cmp ../before ../after
>  '
>  
> +test_expect_success 'teardown worktree' '
> +    cd ..
> +'

Funny indentation.

> +test_expect_success 'setup worktree for symlink test' '
> +	git init worktree-symlink &&
> +	cd worktree-symlink &&
> +	git config core.untrackedCache true &&
> +	mkdir one two &&
> +	touch one/file two/file &&
> +	git add one/file two/file &&
> +	git commit -m"first commit" &&
> +	git rm -rf one &&
> +	ln -s two one &&
> +	git add one &&
> +	git commit -m"second commit"
> +'

This needs SYMLINKS prereq, which in turn means it cannot be tested
on certain platforms.  I thought Duy's answer was that this does not
need to involve a symbolic link at all?  If so, perhaps we can have
another test that does not need symlink?

Thanks.