[Updated] D8536: flags: also test merge with executable bit removed

marmoute (Pierre-Yves David) phabricator at mercurial-scm.org
Thu May 28 16:40:12 UTC 2020


Closed by commit rHG6d968cd40961: flags: also test merge with executable bit removed (authored by marmoute).
This revision was automatically updated to reflect the committed changes.

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D8536?vs=21400&id=21504

CHANGES SINCE LAST ACTION
  https://phab.mercurial-scm.org/D8536/new/

REVISION DETAIL
  https://phab.mercurial-scm.org/D8536

AFFECTED FILES
  tests/test-merge-exec.t

CHANGE DETAILS

diff --git a/tests/test-merge-exec.t b/tests/test-merge-exec.t
--- a/tests/test-merge-exec.t
+++ b/tests/test-merge-exec.t
@@ -106,8 +106,6 @@
 Removing the flag
 -----------------
 
-setup
-
 Change on one side, executable bit on the other
 
   $ hg clone base-exec simple-merge-repo-removal
@@ -162,6 +160,9 @@
 Testing merging mode change with rename
 =======================================
 
+Adding the flag
+---------------
+
   $ hg clone base-repo rename-merge-repo
   updating to branch default
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -213,10 +214,71 @@
 
   $ cd ..
 
+Removing the flag
+-----------------
+
+  $ hg clone base-exec rename-merge-repo-removal
+  updating to branch default
+  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  $ cd rename-merge-repo-removal
+
+make "a" non-executable on one side
+
+  $ chmod -x a
+  $ hg status
+  M a
+  $ hg ci -m "make a non-executable"
+  $ [ -x a ] && echo "executable bit not removed"
+  [1]
+  $ hg up ".^"
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+make "a" renamed on the other side
+
+  $ hg mv a z
+  $ hg st --copies
+  A z
+    a
+  R a
+  $ hg ci -m "rename a to z"
+  created new head
+
+merge them (from the rename side)
+
+  $ hg merge 'desc("make a non-executable")'
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  (branch merge, don't forget to commit)
+  $ hg st --copies
+  M z
+    a
+  $ [ -x z ] && echo "executable bit not removed"
+  [1]
+
+merge them (from the chmod side)
+
+  $ hg up -C 'desc("make a non-executable")'
+  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  $ hg merge 'desc("rename a to z")'
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  (branch merge, don't forget to commit)
+  $ hg st --copies
+  M z
+    a
+  R a
+  $ [ -x z ] && echo "executable bit not removed"
+  [1]
+
+
+  $ cd ..
+
+
 Testing merging mode change with rename + modification on both side
 ===================================================================
 
 
+Adding the flag
+---------------
+
   $ hg clone base-repo rename+mod-merge-repo
   updating to branch default
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -290,3 +352,83 @@
   $ [ -x z ] || echo "executable bit lost"
 
   $ cd ..
+
+Removing the flag
+-----------------
+
+  $ hg clone base-exec rename+mod-merge-repo-removal
+  updating to branch default
+  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  $ cd rename+mod-merge-repo-removal
+
+make "a" non-executable on one side
+
+  $ chmod -x a
+  $ cat << EOF > a
+  > 1
+  > x
+  > 3
+  > 4
+  > 5
+  > 6
+  > 7
+  > 8
+  > 9
+  > EOF
+  $ hg status
+  M a
+  $ hg ci -m "make a non-executable, and change start"
+  $ [ -x z ] && echo "executable bit not removed"
+  [1]
+  $ hg up ".^"
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+make "a" renamed on the other side
+
+  $ hg mv a z
+  $ hg st --copies
+  A z
+    a
+  R a
+  $ cat << EOF > z
+  > 1
+  > 2
+  > 3
+  > 4
+  > 5
+  > 6
+  > 7
+  > x
+  > 9
+  > EOF
+  $ hg ci -m "rename a to z, and change end"
+  created new head
+
+merge them (from the rename side)
+
+  $ hg merge 'desc("make a non-executable")'
+  merging z and a to z
+  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
+  (branch merge, don't forget to commit)
+  $ hg st --copies
+  M z
+    a
+  $ [ -x z ] && echo "executable bit not removed"
+  [1]
+
+merge them (from the chmod side)
+
+  $ hg up -C 'desc("make a non-executable")'
+  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  $ hg merge 'desc("rename a to z")'
+  merging a and z to z
+  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
+  (branch merge, don't forget to commit)
+  $ hg st --copies
+  M z
+    a
+  R a
+  $ [ -x z ] && echo "executable bit not removed"
+  [1]
+
+  $ cd ..



To: marmoute, #hg-reviewers, durin42
Cc: mercurial-patches
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial-patches/attachments/20200528/1a3aac46/attachment-0002.html>


More information about the Mercurial-patches mailing list