tests/test-stablesort-criss-cross.t
branchmercurial-4.0
changeset 2532 ca157d06b2dc
parent 2120 e38156312410
parent 2530 606722a686ef
equal deleted inserted replaced
2467:d517659556cf 2532:ca157d06b2dc
       
     1 Test for stable ordering capabilities
       
     2 =====================================
       
     3 
       
     4   $ . $TESTDIR/testlib/pythonpath.sh
       
     5 
       
     6   $ cat << EOF >> $HGRCPATH
       
     7   > [extensions]
       
     8   > hgext3rd.evolve =
       
     9   > [ui]
       
    10   > logtemplate = "{rev} {node|short} {desc} {tags}\n"
       
    11   > [alias]
       
    12   > showsort = debugstablesort --template="{node|short}\n"
       
    13   > EOF
       
    14 
       
    15   $ checktopo () {
       
    16   >     seen='null';
       
    17   >     for node in `hg showsort --rev "$1"`; do
       
    18   >         echo "=== checking $node ===";
       
    19   >         hg log --rev "($seen) and $node::";
       
    20   >         seen="${seen}+${node}";
       
    21   >     done;
       
    22   > }
       
    23 
       
    24   $ cat << EOF >> random_rev.py
       
    25   > import random
       
    26   > import sys
       
    27   > 
       
    28   > loop = int(sys.argv[1])
       
    29   > var = int(sys.argv[2])
       
    30   > for x in range(loop):
       
    31   >     print(x + random.randint(0, var))
       
    32   > EOF
       
    33 
       
    34 Check criss cross merge
       
    35 =======================
       
    36 
       
    37   $ hg init crisscross_A
       
    38   $ cd crisscross_A
       
    39   $ hg debugbuilddag '
       
    40   > ...:base         # create some base
       
    41   > # criss cross #1: simple
       
    42   > +3:AbaseA      # "A" branch for CC "A"
       
    43   > <base+2:AbaseB # "B" branch for CC "B"
       
    44   > <AbaseA/AbaseB:AmergeA
       
    45   > <AbaseB/AbaseA:AmergeB
       
    46   > <AmergeA/AmergeB:Afinal
       
    47   > # criss cross #2:multiple closes ones
       
    48   > .:BbaseA
       
    49   > <AmergeB:BbaseB
       
    50   > <BbaseA/BbaseB:BmergeA
       
    51   > <BbaseB/BbaseA:BmergeB
       
    52   > <BmergeA/BmergeB:BmergeC
       
    53   > <BmergeB/BmergeA:BmergeD
       
    54   > <BmergeC/BmergeD:Bfinal
       
    55   > # criss cross #2:many branches
       
    56   > <Bfinal.:CbaseA
       
    57   > <Bfinal+2:CbaseB
       
    58   > <Bfinal.:CbaseC
       
    59   > <Bfinal+5:CbaseD
       
    60   > <Bfinal.:CbaseE
       
    61   > <CbaseA/CbaseB+7:CmergeA
       
    62   > <CbaseA/CbaseC:CmergeB
       
    63   > <CbaseA/CbaseD.:CmergeC
       
    64   > <CbaseA/CbaseE:CmergeD
       
    65   > <CbaseB/CbaseA+2:CmergeE
       
    66   > <CbaseB/CbaseC:CmergeF
       
    67   > <CbaseB/CbaseD.:CmergeG
       
    68   > <CbaseB/CbaseE:CmergeH
       
    69   > <CbaseC/CbaseA.:CmergeI
       
    70   > <CbaseC/CbaseB:CmergeJ
       
    71   > <CbaseC/CbaseD+5:CmergeK
       
    72   > <CbaseC/CbaseE+2:CmergeL
       
    73   > <CbaseD/CbaseA:CmergeM
       
    74   > <CbaseD/CbaseB...:CmergeN
       
    75   > <CbaseD/CbaseC:CmergeO
       
    76   > <CbaseD/CbaseE:CmergeP
       
    77   > <CbaseE/CbaseA:CmergeQ
       
    78   > <CbaseE/CbaseB..:CmergeR
       
    79   > <CbaseE/CbaseC.:CmergeS
       
    80   > <CbaseE/CbaseD:CmergeT
       
    81   > <CmergeA/CmergeG:CmergeWA
       
    82   > <CmergeB/CmergeF:CmergeWB
       
    83   > <CmergeC/CmergeE:CmergeWC
       
    84   > <CmergeD/CmergeH:CmergeWD
       
    85   > <CmergeT/CmergeI:CmergeWE
       
    86   > <CmergeS/CmergeJ:CmergeWF
       
    87   > <CmergeR/CmergeK:CmergeWG
       
    88   > <CmergeQ/CmergeL:CmergeWH
       
    89   > <CmergeP/CmergeM:CmergeWI
       
    90   > <CmergeO/CmergeN:CmergeWJ
       
    91   > <CmergeO/CmergeN:CmergeWK
       
    92   > <CmergeWA/CmergeWG:CmergeXA
       
    93   > <CmergeWB/CmergeWH:CmergeXB
       
    94   > <CmergeWC/CmergeWI:CmergeXC
       
    95   > <CmergeWD/CmergeWJ:CmergeXD
       
    96   > <CmergeWE/CmergeWK:CmergeXE
       
    97   > <CmergeWF/CmergeWA:CmergeXF
       
    98   > <CmergeXA/CmergeXF:CmergeYA
       
    99   > <CmergeXB/CmergeXE:CmergeYB
       
   100   > <CmergeXC/CmergeXD:CmergeYC
       
   101   > <CmergeYA/CmergeYB:CmergeZA
       
   102   > <CmergeYC/CmergeYB:CmergeZB
       
   103   > <CmergeZA/CmergeZB:Cfinal
       
   104   > '
       
   105   $ hg log -G
       
   106   o    94 01f771406cab r94 Cfinal tip
       
   107   |\
       
   108   | o    93 84d6ec6a8e21 r93 CmergeZB
       
   109   | |\
       
   110   o | |  92 721ba7c5f4ff r92 CmergeZA
       
   111   |\| |
       
   112   | | o    91 8ae32c3ed670 r91 CmergeYC
       
   113   | | |\
       
   114   | o \ \    90 8b79544bb56d r90 CmergeYB
       
   115   | |\ \ \
       
   116   o \ \ \ \    89 041e1188f5f1 r89 CmergeYA
       
   117   |\ \ \ \ \
       
   118   | o \ \ \ \    88 2472d042ec95 r88 CmergeXF
       
   119   | |\ \ \ \ \
       
   120   | | | | o \ \    87 c7d3029bf731 r87 CmergeXE
       
   121   | | | | |\ \ \
       
   122   | | | | | | | o    86 469c700e9ed8 r86 CmergeXD
       
   123   | | | | | | | |\
       
   124   | | | | | | o \ \    85 28be96b80dc1 r85 CmergeXC
       
   125   | | | | | | |\ \ \
       
   126   | | | o \ \ \ \ \ \    84 dbde319d43a3 r84 CmergeXB
       
   127   | | | |\ \ \ \ \ \ \
       
   128   o | | | | | | | | | |  83 b3cf98c3d587 r83 CmergeXA
       
   129   |\| | | | | | | | | |
       
   130   | | | | | | o | | | |    82 1da228afcf06 r82 CmergeWK
       
   131   | | | | | | |\ \ \ \ \
       
   132   | | | | | | +-+-------o  81 0bab31f71a21 r81 CmergeWJ
       
   133   | | | | | | | | | | |
       
   134   | | | | | | | | | o |    80 cd345198cf12 r80 CmergeWI
       
   135   | | | | | | | | | |\ \
       
   136   | | | | o \ \ \ \ \ \ \    79 82238c0bc950 r79 CmergeWH
       
   137   | | | | |\ \ \ \ \ \ \ \
       
   138   o \ \ \ \ \ \ \ \ \ \ \ \    78 89a0fe204177 r78 CmergeWG
       
   139   |\ \ \ \ \ \ \ \ \ \ \ \ \
       
   140   | | | o \ \ \ \ \ \ \ \ \ \    77 97d19fc5236f r77 CmergeWF
       
   141   | | | |\ \ \ \ \ \ \ \ \ \ \
       
   142   | | | | | | | | o \ \ \ \ \ \    76 37ad3ab0cddf r76 CmergeWE
       
   143   | | | | | | | | |\ \ \ \ \ \ \
       
   144   | | | | | | | | | | | | | | | o    75 790cdfecd168 r75 CmergeWD
       
   145   | | | | | | | | | | | | | | | |\
       
   146   | | | | | | | | | | | | o \ \ \ \    74 698970a2480b r74 CmergeWC
       
   147   | | | | | | | | | | | | |\ \ \ \ \
       
   148   | | | | | o \ \ \ \ \ \ \ \ \ \ \ \    73 31d7b43cc321 r73 CmergeWB
       
   149   | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \
       
   150   | | o \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \    72 eed373b0090d r72 CmergeWA
       
   151   | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
       
   152   | | | | | | | | | | | o \ \ \ \ \ \ \ \    71 4f3b41956174 r71 CmergeT
       
   153   | | | | | | | | | | | |\ \ \ \ \ \ \ \ \
       
   154   | | | | | o | | | | | | | | | | | | | | |  70 c3c7fa726f88 r70 CmergeS
       
   155   | | | | | | | | | | | | | | | | | | | | |
       
   156   | | | | | o-------------+ | | | | | | | |  69 d917f77a6439 r69
       
   157   | | | | | | | | | | | | | | | | | | | | |
       
   158   | o | | | | | | | | | | | | | | | | | | |  68 fac9e582edd1 r68 CmergeR
       
   159   | | | | | | | | | | | | | | | | | | | | |
       
   160   | o | | | | | | | | | | | | | | | | | | |  67 e4cfd6264623 r67
       
   161   | | | | | | | | | | | | | | | | | | | | |
       
   162   | o---------------------+ | | | | | | | |  66 d99e0f7dad5b r66
       
   163   | | | | | | | | | | | | | | | | | | | | |
       
   164   | | | | | | | | | o-----+ | | | | | | | |  65 c713eae2d31f r65 CmergeQ
       
   165   | | | | | | | | | | | | | | | | | | | | |
       
   166   | | | | | | | | | | | +-+-----------o | |  64 b33fd5ad4c0c r64 CmergeP
       
   167   | | | | | | | | | | | | | | | | | |  / /
       
   168   | | | | | +-----------+-----o | | | / /  63 bf6593f7e073 r63 CmergeO
       
   169   | | | | | | | | | | | | | |  / / / / /
       
   170   | | | | | | | | | | | | | o | | | | |  62 3871506da61e r62 CmergeN
       
   171   | | | | | | | | | | | | | | | | | | |
       
   172   | | | | | | | | | | | | | o | | | | |  61 c84da74cf586 r61
       
   173   | | | | | | | | | | | | | | | | | | |
       
   174   | | | | | | | | | | | | | o | | | | |  60 5eec91b12a58 r60
       
   175   | | | | | | | | | | | | | | | | | | |
       
   176   | +-------------------+---o | | | | |  59 0484d39906c8 r59
       
   177   | | | | | | | | | | | | |  / / / / /
       
   178   | | | | | | | | | +---+-------o / /  58 29141354a762 r58 CmergeM
       
   179   | | | | | | | | | | | | | | |  / /
       
   180   | | | | | | | | o | | | | | | | |  57 e7135b665740 r57 CmergeL
       
   181   | | | | | | | | | | | | | | | | |
       
   182   | | | | | | | | o | | | | | | | |  56 c7c1497fc270 r56
       
   183   | | | | | | | | | | | | | | | | |
       
   184   | | | | | +-----o-------+ | | | |  55 76151e8066e1 r55
       
   185   | | | | | | | |  / / / / / / / /
       
   186   o | | | | | | | | | | | | | | |  54 9a67238ad1c4 r54 CmergeK
       
   187   | | | | | | | | | | | | | | | |
       
   188   o | | | | | | | | | | | | | | |  53 c37e7cd9f2bd r53
       
   189   | | | | | | | | | | | | | | | |
       
   190   o | | | | | | | | | | | | | | |  52 0d153e3ad632 r52
       
   191   | | | | | | | | | | | | | | | |
       
   192   o | | | | | | | | | | | | | | |  51 97ac964e34b7 r51
       
   193   | | | | | | | | | | | | | | | |
       
   194   o | | | | | | | | | | | | | | |  50 900dd066a072 r50
       
   195   | | | | | | | | | | | | | | | |
       
   196   o---------+---------+ | | | | |  49 673f5499c8c2 r49
       
   197    / / / / / / / / / / / / / / /
       
   198   +-----o / / / / / / / / / / /  48 8ecb28746ec4 r48 CmergeJ
       
   199   | | | |/ / / / / / / / / / /
       
   200   | | | | | | | o | | | | | |  47 d6c9e2d27f14 r47 CmergeI
       
   201   | | | | | | | | | | | | | |
       
   202   | | | +-------o | | | | | |  46 bfcfd9a61e84 r46
       
   203   | | | | | | |/ / / / / / /
       
   204   +---------------+-------o  45 40553f55397e r45 CmergeH
       
   205   | | | | | | | | | | | |
       
   206   | | o | | | | | | | | |  44 d94da36be176 r44 CmergeG
       
   207   | | | | | | | | | | | |
       
   208   +---o---------+ | | | |  43 4b39f229a0ce r43
       
   209   | |  / / / / / / / / /
       
   210   +---+---o / / / / / /  42 43fc0b77ff07 r42 CmergeF
       
   211   | | | |  / / / / / /
       
   212   | | | | | | | | o |  41 88eace5ce682 r41 CmergeE
       
   213   | | | | | | | | | |
       
   214   | | | | | | | | o |  40 d928b4e8a515 r40
       
   215   | | | | | | | | | |
       
   216   +-------+-------o |  39 88714f4125cb r39
       
   217   | | | | | | | |  /
       
   218   | | | | +---+---o  38 e3e6738c56ce r38 CmergeD
       
   219   | | | | | | | |
       
   220   | | | | | | | o  37 32b41ca704e1 r37 CmergeC
       
   221   | | | | | | | |
       
   222   | | | | +-+---o  36 01e29e20ea3f r36
       
   223   | | | | | | |
       
   224   | | | o | | |  35 1f4a19f83a29 r35 CmergeB
       
   225   | | |/|/ / /
       
   226   | o | | | |  34 722d1b8b8942 r34 CmergeA
       
   227   | | | | | |
       
   228   | o | | | |  33 47c836a1f13e r33
       
   229   | | | | | |
       
   230   | o | | | |  32 2ea3fbf151b5 r32
       
   231   | | | | | |
       
   232   | o | | | |  31 0c3f2ba59eb7 r31
       
   233   | | | | | |
       
   234   | o | | | |  30 f3441cd3e664 r30
       
   235   | | | | | |
       
   236   | o | | | |  29 b9c3aa92fba5 r29
       
   237   | | | | | |
       
   238   | o | | | |  28 3bdb00d5c818 r28
       
   239   | | | | | |
       
   240   | o---+ | |  27 2bd677d0f13a r27
       
   241   |/ / / / /
       
   242   | | | | o  26 de05b9c29ec7 r26 CbaseE
       
   243   | | | | |
       
   244   | | | o |  25 ad46a4a0fc10 r25 CbaseD
       
   245   | | | | |
       
   246   | | | o |  24 a457569c5306 r24
       
   247   | | | | |
       
   248   | | | o |  23 f2bdd828a3aa r23
       
   249   | | | | |
       
   250   | | | o |  22 5ce588c2b7c5 r22
       
   251   | | | | |
       
   252   | | | o |  21 17b6e6bac221 r21
       
   253   | | | |/
       
   254   | o---+  20 b115c694654e r20 CbaseC
       
   255   |  / /
       
   256   o | |  19 884936b34999 r19 CbaseB
       
   257   | | |
       
   258   o---+  18 9729470d9329 r18
       
   259    / /
       
   260   o /  17 4f5078f7da8a r17 CbaseA
       
   261   |/
       
   262   o    16 3e1560705803 r16 Bfinal
       
   263   |\
       
   264   | o    15 55bf3fdb634f r15 BmergeD
       
   265   | |\
       
   266   o---+  14 39bab1cb1cbe r14 BmergeC
       
   267   |/ /
       
   268   | o    13 f7c6e7bfbcd0 r13 BmergeB
       
   269   | |\
       
   270   o---+  12 26f59ee8b1d7 r12 BmergeA
       
   271   |/ /
       
   272   | o  11 3e2da24aee59 r11 BbaseA
       
   273   | |
       
   274   | o  10 5ba9a53052ed r10 Afinal
       
   275   |/|
       
   276   o |    9 07c648efceeb r9 AmergeB BbaseB
       
   277   |\ \
       
   278   +---o  8 c81423bf5a24 r8 AmergeA
       
   279   | |/
       
   280   | o  7 65eb34ffc3a8 r7 AbaseB
       
   281   | |
       
   282   | o  6 0c1445abb33d r6
       
   283   | |
       
   284   o |  5 c8d03c1b5e94 r5 AbaseA
       
   285   | |
       
   286   o |  4 bebd167eb94d r4
       
   287   | |
       
   288   o |  3 2dc09a01254d r3
       
   289   |/
       
   290   o  2 01241442b3c2 r2 base
       
   291   |
       
   292   o  1 66f7d451a68b r1
       
   293   |
       
   294   o  0 1ea73414a91b r0
       
   295   
       
   296 
       
   297 Basic check
       
   298 -----------
       
   299 
       
   300   $ hg showsort --rev 'Afinal'
       
   301   1ea73414a91b
       
   302   66f7d451a68b
       
   303   01241442b3c2
       
   304   0c1445abb33d
       
   305   65eb34ffc3a8
       
   306   2dc09a01254d
       
   307   bebd167eb94d
       
   308   c8d03c1b5e94
       
   309   07c648efceeb
       
   310   c81423bf5a24
       
   311   5ba9a53052ed
       
   312   $ checktopo Afinal
       
   313   === checking 1ea73414a91b ===
       
   314   === checking 66f7d451a68b ===
       
   315   === checking 01241442b3c2 ===
       
   316   === checking 0c1445abb33d ===
       
   317   === checking 65eb34ffc3a8 ===
       
   318   === checking 2dc09a01254d ===
       
   319   === checking bebd167eb94d ===
       
   320   === checking c8d03c1b5e94 ===
       
   321   === checking 07c648efceeb ===
       
   322   === checking c81423bf5a24 ===
       
   323   === checking 5ba9a53052ed ===
       
   324   $ hg showsort --rev 'AmergeA'
       
   325   1ea73414a91b
       
   326   66f7d451a68b
       
   327   01241442b3c2
       
   328   0c1445abb33d
       
   329   65eb34ffc3a8
       
   330   2dc09a01254d
       
   331   bebd167eb94d
       
   332   c8d03c1b5e94
       
   333   c81423bf5a24
       
   334   $ checktopo AmergeA
       
   335   === checking 1ea73414a91b ===
       
   336   === checking 66f7d451a68b ===
       
   337   === checking 01241442b3c2 ===
       
   338   === checking 0c1445abb33d ===
       
   339   === checking 65eb34ffc3a8 ===
       
   340   === checking 2dc09a01254d ===
       
   341   === checking bebd167eb94d ===
       
   342   === checking c8d03c1b5e94 ===
       
   343   === checking c81423bf5a24 ===
       
   344   $ hg showsort --rev 'AmergeB'
       
   345   1ea73414a91b
       
   346   66f7d451a68b
       
   347   01241442b3c2
       
   348   0c1445abb33d
       
   349   65eb34ffc3a8
       
   350   2dc09a01254d
       
   351   bebd167eb94d
       
   352   c8d03c1b5e94
       
   353   07c648efceeb
       
   354   $ checktopo AmergeB
       
   355   === checking 1ea73414a91b ===
       
   356   === checking 66f7d451a68b ===
       
   357   === checking 01241442b3c2 ===
       
   358   === checking 0c1445abb33d ===
       
   359   === checking 65eb34ffc3a8 ===
       
   360   === checking 2dc09a01254d ===
       
   361   === checking bebd167eb94d ===
       
   362   === checking c8d03c1b5e94 ===
       
   363   === checking 07c648efceeb ===
       
   364 
       
   365 close criss cross
       
   366   $ hg showsort --rev 'Bfinal'
       
   367   1ea73414a91b
       
   368   66f7d451a68b
       
   369   01241442b3c2
       
   370   0c1445abb33d
       
   371   65eb34ffc3a8
       
   372   2dc09a01254d
       
   373   bebd167eb94d
       
   374   c8d03c1b5e94
       
   375   07c648efceeb
       
   376   c81423bf5a24
       
   377   5ba9a53052ed
       
   378   3e2da24aee59
       
   379   26f59ee8b1d7
       
   380   f7c6e7bfbcd0
       
   381   39bab1cb1cbe
       
   382   55bf3fdb634f
       
   383   3e1560705803
       
   384   $ checktopo Bfinal
       
   385   === checking 1ea73414a91b ===
       
   386   === checking 66f7d451a68b ===
       
   387   === checking 01241442b3c2 ===
       
   388   === checking 0c1445abb33d ===
       
   389   === checking 65eb34ffc3a8 ===
       
   390   === checking 2dc09a01254d ===
       
   391   === checking bebd167eb94d ===
       
   392   === checking c8d03c1b5e94 ===
       
   393   === checking 07c648efceeb ===
       
   394   === checking c81423bf5a24 ===
       
   395   === checking 5ba9a53052ed ===
       
   396   === checking 3e2da24aee59 ===
       
   397   === checking 26f59ee8b1d7 ===
       
   398   === checking f7c6e7bfbcd0 ===
       
   399   === checking 39bab1cb1cbe ===
       
   400   === checking 55bf3fdb634f ===
       
   401   === checking 3e1560705803 ===
       
   402 
       
   403 many branches criss cross
       
   404 
       
   405   $ hg showsort --rev 'Cfinal'
       
   406   1ea73414a91b
       
   407   66f7d451a68b
       
   408   01241442b3c2
       
   409   0c1445abb33d
       
   410   65eb34ffc3a8
       
   411   2dc09a01254d
       
   412   bebd167eb94d
       
   413   c8d03c1b5e94
       
   414   07c648efceeb
       
   415   c81423bf5a24
       
   416   5ba9a53052ed
       
   417   3e2da24aee59
       
   418   26f59ee8b1d7
       
   419   f7c6e7bfbcd0
       
   420   39bab1cb1cbe
       
   421   55bf3fdb634f
       
   422   3e1560705803
       
   423   17b6e6bac221
       
   424   5ce588c2b7c5
       
   425   f2bdd828a3aa
       
   426   a457569c5306
       
   427   ad46a4a0fc10
       
   428   4f5078f7da8a
       
   429   01e29e20ea3f
       
   430   32b41ca704e1
       
   431   29141354a762
       
   432   9729470d9329
       
   433   884936b34999
       
   434   0484d39906c8
       
   435   5eec91b12a58
       
   436   c84da74cf586
       
   437   3871506da61e
       
   438   2bd677d0f13a
       
   439   3bdb00d5c818
       
   440   b9c3aa92fba5
       
   441   f3441cd3e664
       
   442   0c3f2ba59eb7
       
   443   2ea3fbf151b5
       
   444   47c836a1f13e
       
   445   722d1b8b8942
       
   446   4b39f229a0ce
       
   447   d94da36be176
       
   448   eed373b0090d
       
   449   88714f4125cb
       
   450   d928b4e8a515
       
   451   88eace5ce682
       
   452   698970a2480b
       
   453   b115c694654e
       
   454   1f4a19f83a29
       
   455   43fc0b77ff07
       
   456   31d7b43cc321
       
   457   673f5499c8c2
       
   458   900dd066a072
       
   459   97ac964e34b7
       
   460   0d153e3ad632
       
   461   c37e7cd9f2bd
       
   462   9a67238ad1c4
       
   463   8ecb28746ec4
       
   464   bf6593f7e073
       
   465   0bab31f71a21
       
   466   1da228afcf06
       
   467   bfcfd9a61e84
       
   468   d6c9e2d27f14
       
   469   de05b9c29ec7
       
   470   40553f55397e
       
   471   4f3b41956174
       
   472   37ad3ab0cddf
       
   473   c7d3029bf731
       
   474   76151e8066e1
       
   475   c7c1497fc270
       
   476   e7135b665740
       
   477   b33fd5ad4c0c
       
   478   cd345198cf12
       
   479   28be96b80dc1
       
   480   c713eae2d31f
       
   481   82238c0bc950
       
   482   dbde319d43a3
       
   483   8b79544bb56d
       
   484   d917f77a6439
       
   485   c3c7fa726f88
       
   486   97d19fc5236f
       
   487   2472d042ec95
       
   488   d99e0f7dad5b
       
   489   e4cfd6264623
       
   490   fac9e582edd1
       
   491   89a0fe204177
       
   492   b3cf98c3d587
       
   493   041e1188f5f1
       
   494   721ba7c5f4ff
       
   495   e3e6738c56ce
       
   496   790cdfecd168
       
   497   469c700e9ed8
       
   498   8ae32c3ed670
       
   499   84d6ec6a8e21
       
   500   01f771406cab
       
   501   $ checktopo Cfinal
       
   502   === checking 1ea73414a91b ===
       
   503   === checking 66f7d451a68b ===
       
   504   === checking 01241442b3c2 ===
       
   505   === checking 0c1445abb33d ===
       
   506   === checking 65eb34ffc3a8 ===
       
   507   === checking 2dc09a01254d ===
       
   508   === checking bebd167eb94d ===
       
   509   === checking c8d03c1b5e94 ===
       
   510   === checking 07c648efceeb ===
       
   511   === checking c81423bf5a24 ===
       
   512   === checking 5ba9a53052ed ===
       
   513   === checking 3e2da24aee59 ===
       
   514   === checking 26f59ee8b1d7 ===
       
   515   === checking f7c6e7bfbcd0 ===
       
   516   === checking 39bab1cb1cbe ===
       
   517   === checking 55bf3fdb634f ===
       
   518   === checking 3e1560705803 ===
       
   519   === checking 17b6e6bac221 ===
       
   520   === checking 5ce588c2b7c5 ===
       
   521   === checking f2bdd828a3aa ===
       
   522   === checking a457569c5306 ===
       
   523   === checking ad46a4a0fc10 ===
       
   524   === checking 4f5078f7da8a ===
       
   525   === checking 01e29e20ea3f ===
       
   526   === checking 32b41ca704e1 ===
       
   527   === checking 29141354a762 ===
       
   528   === checking 9729470d9329 ===
       
   529   === checking 884936b34999 ===
       
   530   === checking 0484d39906c8 ===
       
   531   === checking 5eec91b12a58 ===
       
   532   === checking c84da74cf586 ===
       
   533   === checking 3871506da61e ===
       
   534   === checking 2bd677d0f13a ===
       
   535   === checking 3bdb00d5c818 ===
       
   536   === checking b9c3aa92fba5 ===
       
   537   === checking f3441cd3e664 ===
       
   538   === checking 0c3f2ba59eb7 ===
       
   539   === checking 2ea3fbf151b5 ===
       
   540   === checking 47c836a1f13e ===
       
   541   === checking 722d1b8b8942 ===
       
   542   === checking 4b39f229a0ce ===
       
   543   === checking d94da36be176 ===
       
   544   === checking eed373b0090d ===
       
   545   === checking 88714f4125cb ===
       
   546   === checking d928b4e8a515 ===
       
   547   === checking 88eace5ce682 ===
       
   548   === checking 698970a2480b ===
       
   549   === checking b115c694654e ===
       
   550   === checking 1f4a19f83a29 ===
       
   551   === checking 43fc0b77ff07 ===
       
   552   === checking 31d7b43cc321 ===
       
   553   === checking 673f5499c8c2 ===
       
   554   === checking 900dd066a072 ===
       
   555   === checking 97ac964e34b7 ===
       
   556   === checking 0d153e3ad632 ===
       
   557   === checking c37e7cd9f2bd ===
       
   558   === checking 9a67238ad1c4 ===
       
   559   === checking 8ecb28746ec4 ===
       
   560   === checking bf6593f7e073 ===
       
   561   === checking 0bab31f71a21 ===
       
   562   === checking 1da228afcf06 ===
       
   563   === checking bfcfd9a61e84 ===
       
   564   === checking d6c9e2d27f14 ===
       
   565   === checking de05b9c29ec7 ===
       
   566   === checking 40553f55397e ===
       
   567   === checking 4f3b41956174 ===
       
   568   === checking 37ad3ab0cddf ===
       
   569   === checking c7d3029bf731 ===
       
   570   === checking 76151e8066e1 ===
       
   571   === checking c7c1497fc270 ===
       
   572   === checking e7135b665740 ===
       
   573   === checking b33fd5ad4c0c ===
       
   574   === checking cd345198cf12 ===
       
   575   === checking 28be96b80dc1 ===
       
   576   === checking c713eae2d31f ===
       
   577   === checking 82238c0bc950 ===
       
   578   === checking dbde319d43a3 ===
       
   579   === checking 8b79544bb56d ===
       
   580   === checking d917f77a6439 ===
       
   581   === checking c3c7fa726f88 ===
       
   582   === checking 97d19fc5236f ===
       
   583   === checking 2472d042ec95 ===
       
   584   === checking d99e0f7dad5b ===
       
   585   === checking e4cfd6264623 ===
       
   586   === checking fac9e582edd1 ===
       
   587   === checking 89a0fe204177 ===
       
   588   === checking b3cf98c3d587 ===
       
   589   === checking 041e1188f5f1 ===
       
   590   === checking 721ba7c5f4ff ===
       
   591   === checking e3e6738c56ce ===
       
   592   === checking 790cdfecd168 ===
       
   593   === checking 469c700e9ed8 ===
       
   594   === checking 8ae32c3ed670 ===
       
   595   === checking 84d6ec6a8e21 ===
       
   596   === checking 01f771406cab ===
       
   597 
       
   598 Test stability of this mess
       
   599 ---------------------------
       
   600 
       
   601   $ hg log -r tip
       
   602   94 01f771406cab r94 Cfinal tip
       
   603   $ hg showsort --rev 'all()' > ../crisscross.source.order
       
   604   $ cd ..
       
   605 
       
   606   $ hg clone crisscross_A crisscross_random --rev 0
       
   607   adding changesets
       
   608   adding manifests
       
   609   adding file changes
       
   610   added 1 changesets with 0 changes to 0 files
       
   611   updating to branch default
       
   612   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
       
   613   $ cd crisscross_random
       
   614   $ for x in `python ../random_rev.py 50 44`; do
       
   615   >   # using python to benefit from the random seed
       
   616   >   hg pull -r $x --quiet
       
   617   > done;
       
   618   $ hg pull --quiet
       
   619 
       
   620   $ hg showsort --rev 'all()' > ../crisscross.random.order
       
   621   $ python "$RUNTESTDIR/md5sum.py" ../crisscross.*.order
       
   622   d9aab0d1907d5cf64d205a8b9036e959  ../crisscross.random.order
       
   623   d9aab0d1907d5cf64d205a8b9036e959  ../crisscross.source.order
       
   624   $ diff -u ../crisscross.*.order
       
   625   $ hg showsort --rev 'all()'
       
   626   1ea73414a91b
       
   627   66f7d451a68b
       
   628   01241442b3c2
       
   629   0c1445abb33d
       
   630   65eb34ffc3a8
       
   631   2dc09a01254d
       
   632   bebd167eb94d
       
   633   c8d03c1b5e94
       
   634   07c648efceeb
       
   635   c81423bf5a24
       
   636   5ba9a53052ed
       
   637   3e2da24aee59
       
   638   26f59ee8b1d7
       
   639   f7c6e7bfbcd0
       
   640   39bab1cb1cbe
       
   641   55bf3fdb634f
       
   642   3e1560705803
       
   643   17b6e6bac221
       
   644   5ce588c2b7c5
       
   645   f2bdd828a3aa
       
   646   a457569c5306
       
   647   ad46a4a0fc10
       
   648   4f5078f7da8a
       
   649   01e29e20ea3f
       
   650   32b41ca704e1
       
   651   29141354a762
       
   652   9729470d9329
       
   653   884936b34999
       
   654   0484d39906c8
       
   655   5eec91b12a58
       
   656   c84da74cf586
       
   657   3871506da61e
       
   658   2bd677d0f13a
       
   659   3bdb00d5c818
       
   660   b9c3aa92fba5
       
   661   f3441cd3e664
       
   662   0c3f2ba59eb7
       
   663   2ea3fbf151b5
       
   664   47c836a1f13e
       
   665   722d1b8b8942
       
   666   4b39f229a0ce
       
   667   d94da36be176
       
   668   eed373b0090d
       
   669   88714f4125cb
       
   670   d928b4e8a515
       
   671   88eace5ce682
       
   672   698970a2480b
       
   673   b115c694654e
       
   674   1f4a19f83a29
       
   675   43fc0b77ff07
       
   676   31d7b43cc321
       
   677   673f5499c8c2
       
   678   900dd066a072
       
   679   97ac964e34b7
       
   680   0d153e3ad632
       
   681   c37e7cd9f2bd
       
   682   9a67238ad1c4
       
   683   8ecb28746ec4
       
   684   bf6593f7e073
       
   685   0bab31f71a21
       
   686   1da228afcf06
       
   687   bfcfd9a61e84
       
   688   d6c9e2d27f14
       
   689   de05b9c29ec7
       
   690   40553f55397e
       
   691   4f3b41956174
       
   692   37ad3ab0cddf
       
   693   c7d3029bf731
       
   694   76151e8066e1
       
   695   c7c1497fc270
       
   696   e7135b665740
       
   697   b33fd5ad4c0c
       
   698   cd345198cf12
       
   699   28be96b80dc1
       
   700   c713eae2d31f
       
   701   82238c0bc950
       
   702   dbde319d43a3
       
   703   8b79544bb56d
       
   704   d917f77a6439
       
   705   c3c7fa726f88
       
   706   97d19fc5236f
       
   707   2472d042ec95
       
   708   d99e0f7dad5b
       
   709   e4cfd6264623
       
   710   fac9e582edd1
       
   711   89a0fe204177
       
   712   b3cf98c3d587
       
   713   041e1188f5f1
       
   714   721ba7c5f4ff
       
   715   e3e6738c56ce
       
   716   790cdfecd168
       
   717   469c700e9ed8
       
   718   8ae32c3ed670
       
   719   84d6ec6a8e21
       
   720   01f771406cab