# HG changeset patch # User Mads Kiilerich # Date 2009-03-09 17:44:44 # Node ID 1cb6836946beaaaf18e9e1dfb043b7932ef87cfb # Parent c2cd8d772805f912d47fe151ceff6769ede4d22e test-merge-tools: test ui.merge functionality and selection of internal tools diff --git a/tests/test-merge-tools b/tests/test-merge-tools --- a/tests/test-merge-tools +++ b/tests/test-merge-tools @@ -104,6 +104,24 @@ domerge -r 2 --config merge-patterns.f=t echo "# merge-patterns specifies executable with bogus path and gets warning:" domerge -r 2 --config merge-patterns.f=true --config merge-tools.true.executable=/bin/nonexistingmergetool +echo +echo ui.merge overrules priority +echo + +echo "# ui.merge specifies false:" +domerge -r 2 --config ui.merge=false + +echo "# ui.merge specifies internal:fail:" +domerge -r 2 --config ui.merge=internal:fail + +echo "# ui.merge specifies internal:local:" +domerge -r 2 --config ui.merge=internal:local + +echo "# ui.merge specifies internal:other:" +domerge -r 2 --config ui.merge=internal:other + +echo "# ui.merge specifies internal:other but is overruled by pattern for false:" +domerge -r 2 --config ui.merge=internal:other --config merge-patterns.f=false echo echo Premerge diff --git a/tests/test-merge-tools.out b/tests/test-merge-tools.out --- a/tests/test-merge-tools.out +++ b/tests/test-merge-tools.out @@ -232,6 +232,90 @@ M f ? f.orig +ui.merge overrules priority + +# ui.merge specifies false: +[merge-tools] +false.whatever= +true.priority=1 +true.executable=cat +# hg update -C 1 +# hg merge -r 2 --config ui.merge=false +merging f +merging f failed! +0 files updated, 0 files merged, 0 files removed, 1 files unresolved +use 'hg resolve' to retry unresolved file merges +# cat f +revision 1 +space +# hg stat +M f +? f.orig + +# ui.merge specifies internal:fail: +[merge-tools] +false.whatever= +true.priority=1 +true.executable=cat +# hg update -C 1 +# hg merge -r 2 --config ui.merge=internal:fail +0 files updated, 0 files merged, 0 files removed, 1 files unresolved +use 'hg resolve' to retry unresolved file merges +# cat f +revision 1 +space +# hg stat +M f + +# ui.merge specifies internal:local: +[merge-tools] +false.whatever= +true.priority=1 +true.executable=cat +# hg update -C 1 +# hg merge -r 2 --config ui.merge=internal:local +0 files updated, 1 files merged, 0 files removed, 0 files unresolved +(branch merge, don't forget to commit) +# cat f +revision 1 +space +# hg stat +M f + +# ui.merge specifies internal:other: +[merge-tools] +false.whatever= +true.priority=1 +true.executable=cat +# hg update -C 1 +# hg merge -r 2 --config ui.merge=internal:other +0 files updated, 1 files merged, 0 files removed, 0 files unresolved +(branch merge, don't forget to commit) +# cat f +revision 2 +space +# hg stat +M f + +# ui.merge specifies internal:other but is overruled by pattern for false: +[merge-tools] +false.whatever= +true.priority=1 +true.executable=cat +# hg update -C 1 +# hg merge -r 2 --config ui.merge=internal:other --config merge-patterns.f=false +merging f +merging f failed! +0 files updated, 0 files merged, 0 files removed, 1 files unresolved +use 'hg resolve' to retry unresolved file merges +# cat f +revision 1 +space +# hg stat +M f +? f.orig + + Premerge # Default is silent simplemerge: