git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCHv3 1/6] Add additional testcases for D/F conflicts

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 7, 2010, 21:25 UTC
Message-ID
<7vocejt25d.fsf@alter.siamese.dyndns.org>
In-Reply-To
<1278480034-22939-2-git-send-email-newren@gmail.com>
newren@gmail.com writes:
Show 18 quoted lines
> From: Elijah Newren <newren@gmail.com>
>
> Signed-off-by: Elijah Newren <newren@gmail.com>
> ---
>  t/t6035-merge-dir-to-symlink.sh |   37 +++++++++++++++++++++++++++++++++++--
>  t/t9350-fast-export.sh          |   24 ++++++++++++++++++++++++
>  2 files changed, 59 insertions(+), 2 deletions(-)
>
> diff --git a/t/t6035-merge-dir-to-symlink.sh b/t/t6035-merge-dir-to-symlink.sh
> index 3202e1d..3c176d7 100755
> --- a/t/t6035-merge-dir-to-symlink.sh
> +++ b/t/t6035-merge-dir-to-symlink.sh
> @@ -56,7 +56,7 @@ test_expect_success 'do not lose a/b-2/c/d in merge (resolve)' '
>  	test -f a/b-2/c/d
>  '
>  
> -test_expect_failure 'do not lose a/b-2/c/d in merge (recursive)' '
> +test_expect_failure 'Handle D/F conflict, do not lose a/b-2/c/d in merge (recursive)' '

If you retitle this, you would probably want to retitle the corresponding test for resolve (the one before this test) the same way.

Show 7 quoted lines
> +test_expect_failure 'Handle F/D conflict, do not lose a/b-2/c/d in merge (recursive)' '
> +	git reset --hard &&
> +	git checkout master &&
> +	git merge -s recursive baseline^0 &&
> +	test -h a/b &&
> +	test -f a/b-2/c/d
> +'

It may be a good idea to see what resolve does for all these new tests.

You would not want to do the above test while "master" branch is checked out. Once this is fixed, the commit subsequent tests refer to as "master" will be a different one, and that affects their outcome in a big way. Avoid unnecessarily making tests depend on earlier ones.

> +test_expect_failure 'Handle F/D conflict, do not lose a/b-2/c/d in merge (recursive)' '
> +	git reset --hard &&
> +	git checkout master &&
Likewise.
Show 13 quoted lines
> +	git merge -s recursive baseline^0 &&
> +	test -h a/b &&
> +	test -f a/b-2/c/d
> +'
> +
> +test_expect_success 'do not lose untracked in merge (recursive)' '
> +	git reset --hard &&
> +	git checkout baseline^0 &&
> +	touch a/b/c/e &&
> +	test_must_fail git merge -s recursive master &&
> +	test -f a/b/c/e &&
> +	test -f a/b-2/c/d
> +'

I suspect resolve may fail this one, but as you don't have a test for it, we won't know...

Show 11 quoted lines
> +test_expect_success 'do not lose modifications in merge (recursive)' '
> +	git add --all &&
> +	git reset --hard &&
> +	git checkout baseline^0 &&
> +	echo more content >> a/b/c/d &&
> +	test_must_fail git merge -s recursive master
> +'
> +
>  test_expect_success 'setup a merge where dir a/b-2 changed to symlink' '
>  	git reset --hard &&
>  	git checkout start^0 &&
Show 6 quoted lines
> @@ -82,7 +107,7 @@ test_expect_success 'merge should not have conflicts (resolve)' '
>  	test -f a/b/c/d
>  '
>  
> -test_expect_failure 'merge should not have conflicts (recursive)' '
> +test_expect_failure 'merge should not have D/F conflicts (recursive)' '
The same comment on retitling applies here.
Previous: newren@gmail.comNext: Elijah Newren
Message 3 of 17 in “[PATCHv3 0/6] D/F conflict fixes”
  1. newren@gmail.comJul 7, 2010
  2. 1/6 Add additional testcases for D/F conflictsnewren@gmail.com, Jul 7, 2010
  3. Junio C HamanoJul 7, 2010
  4. Elijah NewrenJul 8, 2010
  5. Junio C HamanoJul 8, 2010
  6. 2/6 Add a rename + D/F conflict testcasenewren@gmail.com, Jul 7, 2010
  7. Junio C HamanoJul 7, 2010
  8. Elijah NewrenJul 8, 2010
  9. 3/6 merge-recursive: Fix D/F conflictsnewren@gmail.com, Jul 7, 2010
  10. Junio C HamanoJul 7, 2010
  11. Elijah NewrenJul 8, 2010
  12. 4/6 merge_recursive: Fix renames across paths below D/F conflictsnewren@gmail.com, Jul 7, 2010
  13. 5/6 fast-export: Fix output order of D/F changesnewren@gmail.com, Jul 7, 2010
  14. Junio C HamanoJul 7, 2010
  15. Elijah NewrenJul 8, 2010
  16. Junio C HamanoJul 8, 2010
  17. 6/6 fast-import: Improve robustness when D->F changes provided in wrong ordernewren@gmail.com, Jul 7, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.