tests: demonstrate that no requested merge tool is ignored if missing
authorMartin von Zweigbergk <martinvonz@google.com>
Mon, 23 Jul 2018 22:51:50 -0700
changeset 38951 6bfd1054d867
parent 38950 35bc4b6e132d
child 38952 0e58c5b20745
tests: demonstrate that no requested merge tool is ignored if missing If you explicitly configure a merge tool, it seems wrong that we don't even warn if we can't find it. This patch adds a test case that demonstrates that. Differential Revision: https://phab.mercurial-scm.org/D3974
tests/test-merge-tools.t
--- a/tests/test-merge-tools.t	Mon Aug 06 16:00:00 2018 -0700
+++ b/tests/test-merge-tools.t	Mon Jul 23 22:51:50 2018 -0700
@@ -1737,6 +1737,27 @@
   # hg resolve --list
   U f
 
+missingbinary is a merge-tool that doesn't exist:
+
+  $ echo "missingbinary.executable=doesnotexist" >> .hg/hgrc
+  $ beforemerge
+  [merge-tools]
+  false.whatever=
+  true.priority=1
+  true.executable=cat
+  missingbinary.executable=doesnotexist
+  # hg update -C 1
+  $ hg merge -y -r 2 --config ui.merge=missingbinary
+  merging f
+  revision 1
+  space
+  revision 0
+  space
+  revision 2
+  space
+  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
+  (branch merge, don't forget to commit)
+
 #if symlink
 
 internal merge cannot handle symlinks and shouldn't try:
@@ -1790,6 +1811,7 @@
   false.whatever=
   true.priority=1
   true.executable=cat
+  missingbinary.executable=doesnotexist
   # hg update -C 1
 
 (default behavior: checking files in the working parent context)