view tests/test-evolve-list.t @ 3252:d57400a0f4c3

stablebranch: avoid overlap between subrange Subrange overlap make things more complicated and less efficient. We fix the computation done in the "cached" version of the stablerange cache. This bring things in line with the result produced by the basic version. Since we already bumped the format version since the last release, I don't things we need to do anything else.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Sat, 09 Dec 2017 22:49:07 +0100
parents 945a0989e41b
children a867d59ea97a 3ff0da45d4c7
line wrap: on
line source

Set up some configs
  $ cat >> $HGRCPATH <<EOF
  > [extensions]
  > rebase=
  > EOF
  $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH

Test the instability listing
  $ hg init r2
  $ cd r2
  $ echo a > a && hg ci -Am a
  adding a
  $ echo b > b && hg ci -Am b
  adding b
  $ echo c > c && hg ci -Am c
  adding c
  $ hg up 0
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
  $ echo a >> a && hg ci --amend -m a
  2 new orphan changesets
  $ hg evolve --list
  d2ae7f538514: b
    unstable: cb9a9f314b8b (obsolete parent)
  
  177f92b77385: c
    orphan: d2ae7f538514 (orphan parent)
  
  $ cd ..

Test the bumpedness listing
  $ hg init r3
  $ cd r3
  $ echo a > a && hg ci -Am a
  adding a
  $ echo b > b && hg ci --amend -m ab
  $ hg phase --public --rev 0 --hidden
  1 new phase-divergent changesets
  $ hg evolve --list
  88cc282e27fc: ab
    bumped: cb9a9f314b8b (immutable precursor)
  
  $ cd ..

Test the divergence listing
  $ hg init r1
  $ cd r1
  $ echo a > a && hg ci -Am a
  adding a
  $ hg up 0
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ echo b > b && hg ci -Am b
  adding b
  $ hg up 0
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
  $ echo c > c && hg ci -Am c
  adding c
  created new head
  $ hg up 0
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
  $ echo d > d && hg ci -Am d
  adding d
  created new head
  $ hg rebase -s 1 -d 2
  rebasing 1:d2ae7f538514 "b"
  $ hg rebase -s 1 -d 3 --hidden --config experimental.allowdivergence=True
  rebasing 1:d2ae7f538514 "b"
  2 new content-divergent changesets
  $ hg evolve --list
  c882616e9d84: b
    divergent: a922b3733e98 (draft) (precursor d2ae7f538514)
  
  a922b3733e98: b
    divergent: c882616e9d84 (draft) (precursor d2ae7f538514)
  
  $ hg evolve --list --rev c882616e9d84
  c882616e9d84: b
    divergent: a922b3733e98 (draft) (precursor d2ae7f538514)
  
  $ hg phase -p a922b3733e98
  $ hg evolve --list
  c882616e9d84: b
    divergent: a922b3733e98 (public) (precursor d2ae7f538514)
  
  $ cd ..