tests/test-rebase-brute-force.t
author Boris Feld <boris.feld@octobus.net>
Fri, 30 Jun 2017 03:43:41 +0200
changeset 34115 97a3bb5aff25
parent 33789 19f495fef0a3
child 34866 1644623ab096
permissions -rw-r--r--
configitems: register the 'patchbomb.intro' config
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
33708
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
     1
  $ cat >> $HGRCPATH <<EOF
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
     2
  > [extensions]
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
     3
  > drawdag=$TESTDIR/drawdag.py
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
     4
  > bruterebase=$TESTDIR/bruterebase.py
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
     5
  > [experimental]
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
     6
  > evolution=createmarkers,allowunstable
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
     7
  > EOF
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
     8
  $ init() {
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
     9
  >   N=`expr ${N:-0} + 1`
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    10
  >   cd $TESTTMP && hg init repo$N && cd repo$N
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    11
  >   hg debugdrawdag
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    12
  > }
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    13
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    14
Source looks like "N"
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    15
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    16
  $ init <<'EOS'
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    17
  > C D
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    18
  > |\|
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    19
  > A B Z
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    20
  > EOS
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    21
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    22
  $ hg debugbruterebase 'all()-Z' Z
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    23
     A: A':Z
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    24
     B: B':Z
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    25
    AB: A':Z B':Z
33789
19f495fef0a3 rebase: change "result would have 3 parent" error message (BC)
Jun Wu <quark@fb.com>
parents: 33786
diff changeset
    26
     C: ABORT: cannot rebase 3:a35c07e8a2a4 without moving at least one of its parents
33708
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    27
    AC: A':Z C':A'B
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    28
    BC: B':Z C':B'A
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    29
   ABC: A':Z B':Z C':A'B'
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    30
     D: D':Z
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    31
    AD: A':Z D':Z
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    32
    BD: B':Z D':B'
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    33
   ABD: A':Z B':Z D':B'
33789
19f495fef0a3 rebase: change "result would have 3 parent" error message (BC)
Jun Wu <quark@fb.com>
parents: 33786
diff changeset
    34
    CD: ABORT: cannot rebase 3:a35c07e8a2a4 without moving at least one of its parents
33786
0975506120fb rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents: 33708
diff changeset
    35
   ACD: A':Z C':A'B D':Z
33708
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    36
   BCD: B':Z C':B'A D':B'
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    37
  ABCD: A':Z B':Z C':A'B' D':B'
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    38
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    39
Moving backwards
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    40
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    41
  $ init <<'EOS'
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    42
  > C
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    43
  > |\
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    44
  > A B
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    45
  > |
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    46
  > Z
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    47
  > EOS
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    48
  $ hg debugbruterebase 'all()-Z' Z
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    49
    B: B':Z
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    50
    A: 
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    51
   BA: B':Z
33789
19f495fef0a3 rebase: change "result would have 3 parent" error message (BC)
Jun Wu <quark@fb.com>
parents: 33786
diff changeset
    52
    C: ABORT: cannot rebase 3:b8d7149b562b without moving at least one of its parents
33708
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    53
   BC: B':Z C':B'A
71b77b61ed60 test-rebase: add a brute force test
Jun Wu <quark@fb.com>
parents:
diff changeset
    54
   AC: 
33786
0975506120fb rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents: 33708
diff changeset
    55
  BAC: B':Z C':B'A