diff tests/test-merge-changedelete.t @ 27599:ad5966de3c9a

filemerge: default change/delete conflicts to 'leave unresolved' (BC) It makes far more sense to leave these conflicts unresolved and kick back to the user than to just assume that the local version be chosen. There are almost certainly buggy scripts and applications using Mercurial in the wild that do merges or rebases non-interactively, and then assume that if the operation succeeded there's nothing the user needs to pay attention to. (This wasn't possible earlier because there was no way to re-resolve change/delete conflicts -- but now it is.)
author Siddharth Agarwal <sid0@fb.com>
date Wed, 23 Dec 2015 12:51:45 -0800
parents 28b5c4fcf48d
children 8abd9f785030
line wrap: on
line diff
--- a/tests/test-merge-changedelete.t	Wed Dec 23 12:41:20 2015 -0800
+++ b/tests/test-merge-changedelete.t	Wed Dec 23 12:51:45 2015 -0800
@@ -55,12 +55,12 @@
 
   $ hg merge -y
   local changed file1 which remote deleted
-  use (c)hanged version, (d)elete, or leave (u)nresolved? c
+  use (c)hanged version, (d)elete, or leave (u)nresolved? u
   remote changed file2 which local deleted
-  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? c
+  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
   merging file3
   warning: conflicts while merging file3! (edit, then use 'hg resolve --mark')
-  0 files updated, 2 files merged, 0 files removed, 1 files unresolved
+  0 files updated, 0 files merged, 0 files removed, 3 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
   [1]
 
@@ -70,18 +70,18 @@
   M file3
   C file1
   --- resolve --list ---
-  R file1
-  R file2
+  U file1
+  U file2
   U file3
   --- debugmergestate ---
   * version 2 records
   local: 13910f48cf7bdb2a0ba6e24b4900e4fdd5739dd4
   other: 10f9a0a634e82080907e62f075ab119cbc565ea6
-  file: file1 (record type "C", state "r", hash 60b27f004e454aca81b0480209cce5081ec52390)
+  file: file1 (record type "C", state "u", hash 60b27f004e454aca81b0480209cce5081ec52390)
     local path: file1 (flags "")
     ancestor path: file1 (node b8e02f6433738021a065f94175c7cd23db5f05be)
     other path: file1 (node null)
-  file: file2 (record type "C", state "r", hash null)
+  file: file2 (record type "C", state "u", hash null)
     local path: file2 (flags "")
     ancestor path: file2 (node 5d9299349fc01ddd25d0070d149b124d8f10411e)
     other path: file2 (node e7c1328648519852e723de86c0c0525acd779257)
@@ -470,12 +470,12 @@
 
   $ hg merge --tool :prompt
   local changed file1 which remote deleted
-  use (c)hanged version, (d)elete, or leave (u)nresolved? c
+  use (c)hanged version, (d)elete, or leave (u)nresolved? u
   remote changed file2 which local deleted
-  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? c
+  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
   no tool found to merge file3
   keep (l)ocal, take (o)ther, or leave (u)nresolved? u
-  0 files updated, 2 files merged, 0 files removed, 1 files unresolved
+  0 files updated, 0 files merged, 0 files removed, 3 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
   [1]
   $ status
@@ -484,18 +484,18 @@
   M file3
   C file1
   --- resolve --list ---
-  R file1
-  R file2
+  U file1
+  U file2
   U file3
   --- debugmergestate ---
   * version 2 records
   local: 13910f48cf7bdb2a0ba6e24b4900e4fdd5739dd4
   other: 10f9a0a634e82080907e62f075ab119cbc565ea6
-  file: file1 (record type "C", state "r", hash 60b27f004e454aca81b0480209cce5081ec52390)
+  file: file1 (record type "C", state "u", hash 60b27f004e454aca81b0480209cce5081ec52390)
     local path: file1 (flags "")
     ancestor path: file1 (node b8e02f6433738021a065f94175c7cd23db5f05be)
     other path: file1 (node null)
-  file: file2 (record type "C", state "r", hash null)
+  file: file2 (record type "C", state "u", hash null)
     local path: file2 (flags "")
     ancestor path: file2 (node 5d9299349fc01ddd25d0070d149b124d8f10411e)
     other path: file2 (node e7c1328648519852e723de86c0c0525acd779257)
@@ -520,12 +520,12 @@
 
   $ hg merge --tool :merge3
   local changed file1 which remote deleted
-  use (c)hanged version, (d)elete, or leave (u)nresolved? c
+  use (c)hanged version, (d)elete, or leave (u)nresolved? u
   remote changed file2 which local deleted
-  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? c
+  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
   merging file3
   warning: conflicts while merging file3! (edit, then use 'hg resolve --mark')
-  0 files updated, 2 files merged, 0 files removed, 1 files unresolved
+  0 files updated, 0 files merged, 0 files removed, 3 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
   [1]
   $ status
@@ -534,18 +534,18 @@
   M file3
   C file1
   --- resolve --list ---
-  R file1
-  R file2
+  U file1
+  U file2
   U file3
   --- debugmergestate ---
   * version 2 records
   local: 13910f48cf7bdb2a0ba6e24b4900e4fdd5739dd4
   other: 10f9a0a634e82080907e62f075ab119cbc565ea6
-  file: file1 (record type "C", state "r", hash 60b27f004e454aca81b0480209cce5081ec52390)
+  file: file1 (record type "C", state "u", hash 60b27f004e454aca81b0480209cce5081ec52390)
     local path: file1 (flags "")
     ancestor path: file1 (node b8e02f6433738021a065f94175c7cd23db5f05be)
     other path: file1 (node null)
-  file: file2 (record type "C", state "r", hash null)
+  file: file2 (record type "C", state "u", hash null)
     local path: file2 (flags "")
     ancestor path: file2 (node 5d9299349fc01ddd25d0070d149b124d8f10411e)
     other path: file2 (node e7c1328648519852e723de86c0c0525acd779257)
@@ -679,27 +679,29 @@
   $ hg rm file2
   $ hg update 1 -y
   local changed file1 which remote deleted
-  use (c)hanged version, (d)elete, or leave (u)nresolved? c
+  use (c)hanged version, (d)elete, or leave (u)nresolved? u
   remote changed file2 which local deleted
-  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? c
-  1 files updated, 2 files merged, 0 files removed, 0 files unresolved
+  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
+  1 files updated, 0 files merged, 0 files removed, 2 files unresolved
+  use 'hg resolve' to retry unresolved file merges
+  [1]
   $ status
   --- status ---
   A file1
   C file2
   C file3
   --- resolve --list ---
-  R file1
-  R file2
+  U file1
+  U file2
   --- debugmergestate ---
   * version 2 records
   local: ab57bf49aa276a22d35a473592d4c34b5abc3eff
   other: 10f9a0a634e82080907e62f075ab119cbc565ea6
-  file: file1 (record type "C", state "r", hash 60b27f004e454aca81b0480209cce5081ec52390)
+  file: file1 (record type "C", state "u", hash 60b27f004e454aca81b0480209cce5081ec52390)
     local path: file1 (flags "")
     ancestor path: file1 (node b8e02f6433738021a065f94175c7cd23db5f05be)
     other path: file1 (node null)
-  file: file2 (record type "C", state "r", hash null)
+  file: file2 (record type "C", state "u", hash null)
     local path: file2 (flags "")
     ancestor path: file2 (node 5d9299349fc01ddd25d0070d149b124d8f10411e)
     other path: file2 (node e7c1328648519852e723de86c0c0525acd779257)
@@ -878,27 +880,29 @@
   $ hg rm file2
   $ hg update 1 --tool :merge3
   local changed file1 which remote deleted
-  use (c)hanged version, (d)elete, or leave (u)nresolved? c
+  use (c)hanged version, (d)elete, or leave (u)nresolved? u
   remote changed file2 which local deleted
-  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? c
-  1 files updated, 2 files merged, 0 files removed, 0 files unresolved
+  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
+  1 files updated, 0 files merged, 0 files removed, 2 files unresolved
+  use 'hg resolve' to retry unresolved file merges
+  [1]
   $ status
   --- status ---
   A file1
   C file2
   C file3
   --- resolve --list ---
-  R file1
-  R file2
+  U file1
+  U file2
   --- debugmergestate ---
   * version 2 records
   local: ab57bf49aa276a22d35a473592d4c34b5abc3eff
   other: 10f9a0a634e82080907e62f075ab119cbc565ea6
-  file: file1 (record type "C", state "r", hash 60b27f004e454aca81b0480209cce5081ec52390)
+  file: file1 (record type "C", state "u", hash 60b27f004e454aca81b0480209cce5081ec52390)
     local path: file1 (flags "")
     ancestor path: file1 (node b8e02f6433738021a065f94175c7cd23db5f05be)
     other path: file1 (node null)
-  file: file2 (record type "C", state "r", hash null)
+  file: file2 (record type "C", state "u", hash null)
     local path: file2 (flags "")
     ancestor path: file2 (node 5d9299349fc01ddd25d0070d149b124d8f10411e)
     other path: file2 (node e7c1328648519852e723de86c0c0525acd779257)