D6252: tests: make merge conflicts explicit in `hg annotate` tests
This revision was automatically updated to reflect the committed changes. Closed by commit rHG7116fc614cfc: tests: make merge conflicts explicit in `hg annotate` tests (authored by martinvonz, committed by ). REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D6252?vs=14780&id=14815 REVISION DETAIL https://phab.mercurial-scm.org/D6252 AFFECTED FILES tests/test-annotate.t tests/test-fastannotate-hg.t tests/test-fastannotate-perfhack.t tests/test-fastannotate-protocol.t tests/test-fastannotate.t CHANGE DETAILS diff --git a/tests/test-fastannotate.t b/tests/test-fastannotate.t --- a/tests/test-fastannotate.t +++ b/tests/test-fastannotate.t @@ -3,8 +3,6 @@ > fastannotate= > EOF - $ HGMERGE=true; export HGMERGE - $ hg init repo $ cd repo diff --git a/tests/test-fastannotate-protocol.t b/tests/test-fastannotate-protocol.t --- a/tests/test-fastannotate-protocol.t +++ b/tests/test-fastannotate-protocol.t @@ -7,8 +7,6 @@ > mainbranch=@ > EOF - $ HGMERGE=true; export HGMERGE - setup the server repo $ hg init repo-server diff --git a/tests/test-fastannotate-perfhack.t b/tests/test-fastannotate-perfhack.t --- a/tests/test-fastannotate-perfhack.t +++ b/tests/test-fastannotate-perfhack.t @@ -5,8 +5,6 @@ > perfhack=1 > EOF - $ HGMERGE=true; export HGMERGE - $ hg init repo $ cd repo diff --git a/tests/test-fastannotate-hg.t b/tests/test-fastannotate-hg.t --- a/tests/test-fastannotate-hg.t +++ b/tests/test-fastannotate-hg.t @@ -1,6 +1,8 @@ (this file is backported from core hg tests/test-annotate.t) $ cat >> $HGRCPATH << EOF + > [ui] + > merge = :merge3 > [diff] > git=1 > [extensions] @@ -11,8 +13,6 @@ > mainbranch=. > EOF - $ HGMERGE=true; export HGMERGE - init $ hg init repo @@ -157,8 +157,34 @@ created new head $ hg merge merging b - 0 files updated, 1 files merged, 0 files removed, 0 files unresolved - (branch merge, don't forget to commit) + warning: conflicts while merging b! (edit, then use 'hg resolve --mark') + 0 files updated, 0 files merged, 0 files removed, 1 files unresolved + use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon + [1] + $ cat b + a + a + a + <<< working copy: 5fbdc1152d97 - test: b2.1 + b4 + c + b5 + ||| base + === + b4 + b5 + b6 + >>> merge rev:37ec9f5c3d1f - test: b2 + $ cat < b + > a + > a + > a + > b4 + > c + > b5 + > EOF + $ hg resolve --mark -q + $ rm b.orig $ hg ci -mmergeb -d '3 0' annotate after merge @@ -247,15 +273,37 @@ > EOF $ hg ci -mc -d '3 0' created new head +BROKEN: 'a' was copied to 'b' on both sides. We should not get a merge conflict here $ hg merge merging b - 0 files updated, 1 files merged, 0 files removed, 0 files unresolved - (branch merge, don't forget to commit) - $ cat <> b + warning: conflicts while merging b! (edit, then use 'hg resolve --mark') + 0 files updated, 0 files merged, 0 files removed, 1 files unresolved + use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon + [1] + $ cat b + <<< working copy: b80e3e32f75a - test: c + a + z + a + ||| base + === + a + a + a + b4 + c + b5 + >>> merge rev:64afcdf8e29e - test: mergeb + $ cat < b + > a + > z + > a > b4 > c > b5 > EOF + $ hg resolve --mark -q + $ rm b.orig $ echo d >> b $ hg ci -mmerge2 -d '4 0' @@ -745,14 +793,28 @@ $ echo 3 >> a $ hg commit -m 3 -q $ hg merge 2 -q + warning: conflicts while merging a! (edit, then use 'hg resolve --mark') + [1] + $ cat a + <<< working copy: 0a068f0261cf - test: 3 + 1 + 2 + 3 + ||| base + 1 + 2 + === + a + >>> merge rev:9409851bc20a - test: a $ cat > a << EOF > b > 1 > 2 > 3 > a > EOF $ hg resolve --mark -q + $ rm a.orig $ hg commit -m m $ hg annotate a 4: b diff --git a/tests/test-annotate.t b/tests/test-annotate.t --- a/tests/test-annotate.t +++ b/tests/test-annotate.t @@ -1,4 +1,7 @@ - $ HGMERGE=true; export HGMERGE + $ cat >> "$HGRCPATH" << EOF + > [ui] + > merge = :merge3 + > EOF init @@ -210,8 +213,34 @@ created new head $ hg merge merging b - 0 files updated, 1 files merged, 0 files removed, 0 files unresolved - (branch merge, don't forget to commit) + warning: conflicts while merging b! (edit, then use 'hg resolve --mark') + 0 files updated, 0 files merged, 0 files removed, 1 files unresolved + use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon + [1] + $ cat b + a + a + a + <<< working copy: 5fbdc1152d97 - test: b2.1 + b4 + c + b5 + ||| base + === + b4 + b5 + b6 + >>> merge rev:37ec9f5c3d1f - test: b2 + $ cat < b + > a + > a + > a + > b4 + > c + > b5 + > EOF + $ hg resolve --mark -q + $ rm b.orig $ hg ci -mmergeb -d '3 0' annotate after merge @@ -24
D6252: tests: make merge conflicts explicit in `hg annotate` tests
marmoute accepted this revision. marmoute added a comment. This one seems simple and sensible. REPOSITORY rHG Mercurial REVISION DETAIL https://phab.mercurial-scm.org/D6252 To: martinvonz, #hg-reviewers, marmoute Cc: marmoute, mercurial-devel ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
D6252: tests: make merge conflicts explicit in `hg annotate` tests
martinvonz created this revision. Herald added a subscriber: mercurial-devel. Herald added a reviewer: hg-reviewers. REVISION SUMMARY We were using `true` as merge tool. I think it makes the test easier to understand if we make the conflicts explcit. It also papered over a conflict that shouldn't have been a conflict (just a bug in copy tracing). I've marked that "BROKEN". REPOSITORY rHG Mercurial REVISION DETAIL https://phab.mercurial-scm.org/D6252 AFFECTED FILES tests/test-annotate.t tests/test-fastannotate-hg.t tests/test-fastannotate-perfhack.t tests/test-fastannotate-protocol.t tests/test-fastannotate.t CHANGE DETAILS diff --git a/tests/test-fastannotate.t b/tests/test-fastannotate.t --- a/tests/test-fastannotate.t +++ b/tests/test-fastannotate.t @@ -3,8 +3,6 @@ > fastannotate= > EOF - $ HGMERGE=true; export HGMERGE - $ hg init repo $ cd repo diff --git a/tests/test-fastannotate-protocol.t b/tests/test-fastannotate-protocol.t --- a/tests/test-fastannotate-protocol.t +++ b/tests/test-fastannotate-protocol.t @@ -7,8 +7,6 @@ > mainbranch=@ > EOF - $ HGMERGE=true; export HGMERGE - setup the server repo $ hg init repo-server diff --git a/tests/test-fastannotate-perfhack.t b/tests/test-fastannotate-perfhack.t --- a/tests/test-fastannotate-perfhack.t +++ b/tests/test-fastannotate-perfhack.t @@ -5,8 +5,6 @@ > perfhack=1 > EOF - $ HGMERGE=true; export HGMERGE - $ hg init repo $ cd repo diff --git a/tests/test-fastannotate-hg.t b/tests/test-fastannotate-hg.t --- a/tests/test-fastannotate-hg.t +++ b/tests/test-fastannotate-hg.t @@ -1,6 +1,8 @@ (this file is backported from core hg tests/test-annotate.t) $ cat >> $HGRCPATH << EOF + > [ui] + > merge = :merge3 > [diff] > git=1 > [extensions] @@ -11,8 +13,6 @@ > mainbranch=. > EOF - $ HGMERGE=true; export HGMERGE - init $ hg init repo @@ -157,8 +157,34 @@ created new head $ hg merge merging b - 0 files updated, 1 files merged, 0 files removed, 0 files unresolved - (branch merge, don't forget to commit) + warning: conflicts while merging b! (edit, then use 'hg resolve --mark') + 0 files updated, 0 files merged, 0 files removed, 1 files unresolved + use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon + [1] + $ cat b + a + a + a + <<< working copy: 5fbdc1152d97 - test: b2.1 + b4 + c + b5 + ||| base + === + b4 + b5 + b6 + >>> merge rev:37ec9f5c3d1f - test: b2 + $ cat < b + > a + > a + > a + > b4 + > c + > b5 + > EOF + $ hg resolve --mark -q + $ rm b.orig $ hg ci -mmergeb -d '3 0' annotate after merge @@ -247,15 +273,37 @@ > EOF $ hg ci -mc -d '3 0' created new head +BROKEN: 'a' was copied to 'b' on both sides. We should not get a merge conflict here $ hg merge merging b - 0 files updated, 1 files merged, 0 files removed, 0 files unresolved - (branch merge, don't forget to commit) - $ cat <> b + warning: conflicts while merging b! (edit, then use 'hg resolve --mark') + 0 files updated, 0 files merged, 0 files removed, 1 files unresolved + use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon + [1] + $ cat b + <<< working copy: b80e3e32f75a - test: c + a + z + a + ||| base + === + a + a + a + b4 + c + b5 + >>> merge rev:64afcdf8e29e - test: mergeb + $ cat < b + > a + > z + > a > b4 > c > b5 > EOF + $ hg resolve --mark -q + $ rm b.orig $ echo d >> b $ hg ci -mmerge2 -d '4 0' @@ -745,14 +793,28 @@ $ echo 3 >> a $ hg commit -m 3 -q $ hg merge 2 -q + warning: conflicts while merging a! (edit, then use 'hg resolve --mark') + [1] + $ cat a + <<< working copy: 0a068f0261cf - test: 3 + 1 + 2 + 3 + ||| base + 1 + 2 + === + a + >>> merge rev:9409851bc20a - test: a $ cat > a << EOF > b > 1 > 2 > 3 > a > EOF $ hg resolve --mark -q + $ rm a.orig $ hg commit -m m $ hg annotate a 4: b diff --git a/tests/test-annotate.t b/tests/test-annotate.t --- a/tests/test-annotate.t +++ b/tests/test-annotate.t @@ -1,4 +1,7 @@ - $ HGMERGE=true; export HGMERGE + $ cat >> "$HGRCPATH" << EOF + > [ui] + > merge = :merge3 + > EOF init @@ -210,8 +213,34 @@ created new head $ hg merge merging b - 0 files updated, 1 files merged, 0 files removed, 0 files unresolved - (branch merge, don't forget to commit) + warning: conflicts while merging b! (edit, then use 'hg resolve --mark') + 0 files updated, 0 files merged, 0 files removed, 1 files unresolved + use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon + [1] + $ cat b + a + a + a + <<< working copy: 5fbdc1152d97 - test: b2.1 + b4 + c + b5 + ||| base + === + b4 + b5 + b6 + >>> merge rev:37ec9f5c3d1f - test: b2 + $ cat < b + > a + > a + > a + > b4 + > c + > b5 + > EOF + $ hg r