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.