view tests/test-evolve-issue5966.t @ 4316:e6ee830c4f45 mercurial-4.3

test-compat: merge mercurial-4.4 into mercurial-4.3
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Mon, 24 Dec 2018 17:47:40 +0100
parents 55ca0b6276e7
children
line wrap: on
line source

Testing evolve --continue with unresolved conflicts (issue5966)
https://bz.mercurial-scm.org/show_bug.cgi?id=5966

  $ . $TESTDIR/testlib/common.sh

  $ hg init issue5966
  $ cd issue5966
  $ cat > .hg/hgrc << EOF
  > [phases]
  > publish = false
  > [alias]
  > glog = log -GT "{rev}: {desc}"
  > [extensions]
  > evolve=
  > EOF

  $ touch a
  $ hg ci -Aqm 'empty'

  $ echo apple > a
  $ hg ci -m 'apple'
  $ echo banana > a
  $ hg ci -m 'banana'
  $ echo coconut > a
  $ hg ci -m 'coconut'

  $ hg glog
  @  3: coconut
  |
  o  2: banana
  |
  o  1: apple
  |
  o  0: empty
  

  $ hg up -q 1

Amending revision 1 in a way that causes conflicts

  $ echo apricot > a
  $ hg amend -m 'apricot'
  2 new unstable changesets

  $ hg glog --hidden
  @  5: apricot
  |
  | x  4: temporary amend commit for 7f59f18ca4a9
  | |
  | | o  3: coconut
  | | |
  | | o  2: banana
  | |/
  | x  1: apple
  |/
  o  0: empty
  

  $ hg evolve -t :fail
  move:[2] banana
  atop:[5] apricot
  fix conflicts and see `hg help evolve.interrupted`
  [1]
  $ hg evolve --list
  34a690fcf6ab: banana
    unstable: 7f59f18ca4a9 (obsolete parent)
  
  feb8c0bffa1f: coconut
    unstable: 34a690fcf6ab (unstable parent)
  
Evolve should detect unresolved conflict.

  $ hg resolve --list
  U a
  $ hg evolve --continue
  abort: unresolved merge conflicts (see 'hg help resolve')
  [255]

(even when ran twice)

  $ hg evolve --continue
  abort: unresolved merge conflicts (see 'hg help resolve')
  [255]

  $ cat a
  apricot
  $ hg resolve --list
  U a
  $ hg resolve a -t :other
  (no more unresolved files)
  continue: hg evolve --continue
  $ hg resolve --list
  R a
  $ hg evolve --continue
  evolving 2:34a690fcf6ab "banana"
  working directory is now at e4207a610ed0
  $ hg resolve --list

evolve the rest of the stack

  $ hg evolve
  move:[3] coconut
  atop:[6] banana
  merging a
  working directory is now at d77b4639fe26

All commit evolved

  $ hg glog
  @  7: coconut
  |
  o  6: banana
  |
  o  5: apricot
  |
  o  0: empty