tests/test-evolve-list.t
author Pulkit Goyal <7895pulkit@gmail.com>
Sat, 06 Jan 2018 18:48:15 +0530
changeset 3385 823031b51d81
parent 3373 3ff0da45d4c7
child 3418 85cdce113c2c
child 4363 a2fdbece7ce1
child 4471 3caa4a459439
permissions -rw-r--r--
evolve: don't use graftstate for continuing `hg evolve` Before this patch, if user runs `hg evolve`, we read the evolve state, write a graftstate from that information and run graft command. This patch replaces that logic with new logic which does not depends on the graft state. The new logic is very filtered part of logic from graft command. We did not require a lot of opts checking and filtering revs logic from the graft command as our use case is fixed. This is the start of series/work which will make `hg evolve` better and have a good statefile for itself.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1634
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
     1
Set up some configs
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
     2
  $ cat >> $HGRCPATH <<EOF
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
     3
  > [extensions]
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
     4
  > rebase=
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
     5
  > EOF
1806
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1646
diff changeset
     6
  $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH
1634
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
     7
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
     8
Test the instability listing
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
     9
  $ hg init r2
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    10
  $ cd r2
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    11
  $ echo a > a && hg ci -Am a
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    12
  adding a
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    13
  $ echo b > b && hg ci -Am b
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    14
  adding b
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    15
  $ echo c > c && hg ci -Am c
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    16
  adding c
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    17
  $ hg up 0
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    18
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    19
  $ echo a >> a && hg ci --amend -m a
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    20
  2 new orphan changesets
1634
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    21
  $ hg evolve --list
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    22
  d2ae7f538514: b
3373
3ff0da45d4c7 evolve: use compat.TROUBLES to show troubles in user interface
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3013
diff changeset
    23
    orphan: cb9a9f314b8b (obsolete parent)
1634
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    24
  
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    25
  177f92b77385: c
2834
38db1466c6fb log: unstable was renamed into orphan
Boris Feld <boris.feld@octobus.net>
parents: 2479
diff changeset
    26
    orphan: d2ae7f538514 (orphan parent)
1634
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    27
  
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    28
  $ cd ..
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    29
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    30
Test the bumpedness listing
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    31
  $ hg init r3
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    32
  $ cd r3
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    33
  $ echo a > a && hg ci -Am a
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    34
  adding a
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    35
  $ echo b > b && hg ci --amend -m ab
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    36
  $ hg phase --public --rev 0 --hidden
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    37
  1 new phase-divergent changesets
1634
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    38
  $ hg evolve --list
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    39
  88cc282e27fc: ab
3373
3ff0da45d4c7 evolve: use compat.TROUBLES to show troubles in user interface
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3013
diff changeset
    40
    phase-divergent: cb9a9f314b8b (immutable precursor)
1634
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    41
  
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    42
  $ cd ..
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    43
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    44
Test the divergence listing
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    45
  $ hg init r1
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    46
  $ cd r1
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    47
  $ echo a > a && hg ci -Am a
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    48
  adding a
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    49
  $ hg up 0
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    50
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    51
  $ echo b > b && hg ci -Am b
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    52
  adding b
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    53
  $ hg up 0
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    54
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    55
  $ echo c > c && hg ci -Am c
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    56
  adding c
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    57
  created new head
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    58
  $ hg up 0
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    59
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    60
  $ echo d > d && hg ci -Am d
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    61
  adding d
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    62
  created new head
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    63
  $ hg rebase -s 1 -d 2
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    64
  rebasing 1:d2ae7f538514 "b"
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    65
  $ hg rebase -s 1 -d 3 --hidden --config experimental.allowdivergence=True
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    66
  rebasing 1:d2ae7f538514 "b"
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    67
  2 new content-divergent changesets
1634
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    68
  $ hg evolve --list
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    69
  c882616e9d84: b
3373
3ff0da45d4c7 evolve: use compat.TROUBLES to show troubles in user interface
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3013
diff changeset
    70
    content-divergent: a922b3733e98 (draft) (precursor d2ae7f538514)
1634
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    71
  
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    72
  a922b3733e98: b
3373
3ff0da45d4c7 evolve: use compat.TROUBLES to show troubles in user interface
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3013
diff changeset
    73
    content-divergent: c882616e9d84 (draft) (precursor d2ae7f538514)
1646
7e1b49cda66c list: report the phase for divergent commits
timeless@gmail.com
parents: 1634
diff changeset
    74
  
2479
df9233aa4bac evolve: fix --rev with --list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 1806
diff changeset
    75
  $ hg evolve --list --rev c882616e9d84
df9233aa4bac evolve: fix --rev with --list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 1806
diff changeset
    76
  c882616e9d84: b
3373
3ff0da45d4c7 evolve: use compat.TROUBLES to show troubles in user interface
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3013
diff changeset
    77
    content-divergent: a922b3733e98 (draft) (precursor d2ae7f538514)
2479
df9233aa4bac evolve: fix --rev with --list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 1806
diff changeset
    78
  
1646
7e1b49cda66c list: report the phase for divergent commits
timeless@gmail.com
parents: 1634
diff changeset
    79
  $ hg phase -p a922b3733e98
7e1b49cda66c list: report the phase for divergent commits
timeless@gmail.com
parents: 1634
diff changeset
    80
  $ hg evolve --list
7e1b49cda66c list: report the phase for divergent commits
timeless@gmail.com
parents: 1634
diff changeset
    81
  c882616e9d84: b
3373
3ff0da45d4c7 evolve: use compat.TROUBLES to show troubles in user interface
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3013
diff changeset
    82
    content-divergent: a922b3733e98 (public) (precursor d2ae7f538514)
1634
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    83
  
9ae4e79a28f3 evolve--list: initial implementation
Kostia Balytskyi <ikostia@fb.com>
parents:
diff changeset
    84
  $ cd ..