tests/test-evolve-obshistory.t
branchmercurial-4.1
changeset 2531 d3d686f05458
parent 2431 0405bbda7402
parent 2484 262d684851dc
child 2532 ca157d06b2dc
child 2595 54ac473663ff
equal deleted inserted replaced
2466:e5e502407ab0 2531:d3d686f05458
    52      date:        Thu Jan 01 00:00:00 1970 +0000
    52      date:        Thu Jan 01 00:00:00 1970 +0000
    53      summary:     ROOT
    53      summary:     ROOT
    54   
    54   
    55 Actual test
    55 Actual test
    56 -----------
    56 -----------
    57   $ hg olog 4ae3a4151de9
    57   $ hg obslog 4ae3a4151de9
    58   @  4ae3a4151de9 (3) A1
    58   @  4ae3a4151de9 (3) A1
    59   |
    59   |
    60   x  471f378eab4c (1) A0
    60   x  471f378eab4c (1) A0
    61        rewritten by test (*20*) as 4ae3a4151de9 (glob)
    61        rewritten by test (*) as 4ae3a4151de9 (glob)
    62   
    62   
    63   $ hg olog 4ae3a4151de9 --no-graph -Tjson | python -m json.tool
    63   $ hg obslog 4ae3a4151de9 --no-graph -Tjson | python -m json.tool
    64   [
    64   [
    65       {
    65       {
    66           "debugobshistory.markers": [],
    66           "debugobshistory.markers": [],
    67           "debugobshistory.node": "4ae3a4151de9",
    67           "debugobshistory.node": "4ae3a4151de9",
    68           "debugobshistory.rev": 3,
    68           "debugobshistory.rev": 3,
    85           "debugobshistory.node": "471f378eab4c",
    85           "debugobshistory.node": "471f378eab4c",
    86           "debugobshistory.rev": 1,
    86           "debugobshistory.rev": 1,
    87           "debugobshistory.shortdescription": "A0"
    87           "debugobshistory.shortdescription": "A0"
    88       }
    88       }
    89   ]
    89   ]
    90   $ hg olog --hidden 471f378eab4c
    90   $ hg obslog --hidden 471f378eab4c
    91   x  471f378eab4c (1) A0
    91   x  471f378eab4c (1) A0
    92        rewritten by test (*20*) as 4ae3a4151de9 (glob)
    92        rewritten by test (*) as 4ae3a4151de9 (glob)
    93   
    93   
    94   $ hg olog --hidden 471f378eab4c --no-graph -Tjson | python -m json.tool
    94   $ hg obslog --hidden 471f378eab4c --no-graph -Tjson | python -m json.tool
    95   [
    95   [
    96       {
    96       {
    97           "debugobshistory.markers": [
    97           "debugobshistory.markers": [
    98               {
    98               {
    99                   "debugobshistory.marker_date": [
    99                   "debugobshistory.marker_date": [
   172   
   172   
   173 
   173 
   174 Actual test
   174 Actual test
   175 -----------
   175 -----------
   176 
   176 
   177   $ hg olog 'desc(B0)' --hidden
   177   $ hg obslog 'desc(B0)' --hidden
   178   x  0dec01379d3b (2) B0
   178   x  0dec01379d3b (2) B0
   179        pruned by test (*20*) (glob)
   179        pruned by test (*) (glob)
   180   
   180   
   181   $ hg olog 'desc(B0)' --hidden --no-graph -Tjson | python -m json.tool
   181   $ hg obslog 'desc(B0)' --hidden --no-graph -Tjson | python -m json.tool
   182   [
   182   [
   183       {
   183       {
   184           "debugobshistory.markers": [
   184           "debugobshistory.markers": [
   185               {
   185               {
   186                   "debugobshistory.marker_date": [
   186                   "debugobshistory.marker_date": [
   194           "debugobshistory.node": "0dec01379d3b",
   194           "debugobshistory.node": "0dec01379d3b",
   195           "debugobshistory.rev": 2,
   195           "debugobshistory.rev": 2,
   196           "debugobshistory.shortdescription": "B0"
   196           "debugobshistory.shortdescription": "B0"
   197       }
   197       }
   198   ]
   198   ]
   199   $ hg olog 'desc(A0)'
   199   $ hg obslog 'desc(A0)'
   200   @  471f378eab4c (1) A0
   200   @  471f378eab4c (1) A0
   201   
   201   
   202   $ hg olog 'desc(A0)' --no-graph -Tjson | python -m json.tool
   202   $ hg obslog 'desc(A0)' --no-graph -Tjson | python -m json.tool
   203   [
   203   [
   204       {
   204       {
   205           "debugobshistory.markers": [],
   205           "debugobshistory.markers": [],
   206           "debugobshistory.node": "471f378eab4c",
   206           "debugobshistory.node": "471f378eab4c",
   207           "debugobshistory.rev": 1,
   207           "debugobshistory.rev": 1,
   305   
   305   
   306 Actual test
   306 Actual test
   307 -----------
   307 -----------
   308 
   308 
   309 Check that debugobshistory on splitted commit show both targets
   309 Check that debugobshistory on splitted commit show both targets
   310   $ hg olog 471597cad322 --hidden
   310   $ hg obslog 471597cad322 --hidden
   311   x  471597cad322 (1) A0
   311   x  471597cad322 (1) A0
   312        rewritten by test (*20*) as 337fec4d2edc, f257fde29c7a (glob)
   312        rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
   313   
   313   
   314   $ hg olog 471597cad322 --hidden --no-graph -Tjson | python -m json.tool
   314   $ hg obslog 471597cad322 --hidden --no-graph -Tjson | python -m json.tool
   315   [
   315   [
   316       {
   316       {
   317           "debugobshistory.markers": [
   317           "debugobshistory.markers": [
   318               {
   318               {
   319                   "debugobshistory.marker_date": [
   319                   "debugobshistory.marker_date": [
   333           "debugobshistory.shortdescription": "A0"
   333           "debugobshistory.shortdescription": "A0"
   334       }
   334       }
   335   ]
   335   ]
   336 Check that debugobshistory on the first successor after split show
   336 Check that debugobshistory on the first successor after split show
   337 the revision plus the splitted one
   337 the revision plus the splitted one
   338   $ hg olog 337fec4d2edc
   338   $ hg obslog 337fec4d2edc
   339   o  337fec4d2edc (2) A0
   339   o  337fec4d2edc (2) A0
   340   |
   340   |
   341   x  471597cad322 (1) A0
   341   x  471597cad322 (1) A0
   342        rewritten by test (*20*) as 337fec4d2edc, f257fde29c7a (glob)
   342        rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
       
   343   
       
   344 With the all option, it should show the three changesets
       
   345   $ hg obslog --all 337fec4d2edc
       
   346   o  337fec4d2edc (2) A0
       
   347   |
       
   348   | @  f257fde29c7a (3) A0
       
   349   |/
       
   350   x  471597cad322 (1) A0
       
   351        rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
   343   
   352   
   344 Check that debugobshistory on the second successor after split show
   353 Check that debugobshistory on the second successor after split show
   345 the revision plus the splitted one
   354 the revision plus the splitted one
   346   $ hg olog f257fde29c7a
   355   $ hg obslog f257fde29c7a
   347   @  f257fde29c7a (3) A0
   356   @  f257fde29c7a (3) A0
   348   |
   357   |
   349   x  471597cad322 (1) A0
   358   x  471597cad322 (1) A0
   350        rewritten by test (*20*) as 337fec4d2edc, f257fde29c7a (glob)
   359        rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
       
   360   
       
   361 With the all option, it should show the three changesets
       
   362   $ hg obslog f257fde29c7a --all
       
   363   o  337fec4d2edc (2) A0
       
   364   |
       
   365   | @  f257fde29c7a (3) A0
       
   366   |/
       
   367   x  471597cad322 (1) A0
       
   368        rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
       
   369   
       
   370 Obslog with all option all should also works on the splitted commit
       
   371   $ hg obslog -a 471597cad322 --hidden
       
   372   o  337fec4d2edc (2) A0
       
   373   |
       
   374   | @  f257fde29c7a (3) A0
       
   375   |/
       
   376   x  471597cad322 (1) A0
       
   377        rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
   351   
   378   
   352 Check that debugobshistory on both successors after split show
   379 Check that debugobshistory on both successors after split show
   353 a coherent graph
   380 a coherent graph
   354   $ hg olog 'f257fde29c7a+337fec4d2edc'
   381   $ hg obslog 'f257fde29c7a+337fec4d2edc'
   355   o  337fec4d2edc (2) A0
   382   o  337fec4d2edc (2) A0
   356   |
   383   |
   357   | @  f257fde29c7a (3) A0
   384   | @  f257fde29c7a (3) A0
   358   |/
   385   |/
   359   x  471597cad322 (1) A0
   386   x  471597cad322 (1) A0
   360        rewritten by test (*20*) as 337fec4d2edc, f257fde29c7a (glob)
   387        rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
   361   
   388   
   362   $ hg update 471597cad322
   389   $ hg update 471597cad322
   363   abort: hidden revision '471597cad322'!
   390   abort: hidden revision '471597cad322'!
   364   (use --hidden to access hidden revisions)
   391   (use --hidden to access hidden revisions)
   365   [255]
   392   [255]
   519      summary:     ROOT
   546      summary:     ROOT
   520   
   547   
   521 Actual test
   548 Actual test
   522 -----------
   549 -----------
   523 
   550 
   524   $ hg olog de7290d8b885 --hidden
   551   $ hg obslog de7290d8b885 --hidden
   525   x  de7290d8b885 (1) A0
   552   x  de7290d8b885 (1) A0
   526        rewritten by test (*20*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
   553        rewritten by test (*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
   527   
   554   
   528   $ hg olog de7290d8b885 --hidden --no-graph -Tjson | python -m json.tool
   555   $ hg obslog de7290d8b885 --hidden --all
       
   556   o  1ae8bc733a14 (4) A0
       
   557   |
       
   558   | o  337fec4d2edc (2) A0
       
   559   |/
       
   560   | @  c7f044602e9b (5) A0
       
   561   |/
       
   562   | o  f257fde29c7a (3) A0
       
   563   |/
       
   564   x  de7290d8b885 (1) A0
       
   565        rewritten by test (*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
       
   566   
       
   567   $ hg obslog de7290d8b885 --hidden --no-graph -Tjson | python -m json.tool
   529   [
   568   [
   530       {
   569       {
   531           "debugobshistory.markers": [
   570           "debugobshistory.markers": [
   532               {
   571               {
   533                   "debugobshistory.marker_date": [
   572                   "debugobshistory.marker_date": [
   547           "debugobshistory.node": "de7290d8b885",
   586           "debugobshistory.node": "de7290d8b885",
   548           "debugobshistory.rev": 1,
   587           "debugobshistory.rev": 1,
   549           "debugobshistory.shortdescription": "A0"
   588           "debugobshistory.shortdescription": "A0"
   550       }
   589       }
   551   ]
   590   ]
   552   $ hg olog c7f044602e9b
   591   $ hg obslog c7f044602e9b
   553   @  c7f044602e9b (5) A0
   592   @  c7f044602e9b (5) A0
   554   |
   593   |
   555   x  de7290d8b885 (1) A0
   594   x  de7290d8b885 (1) A0
   556        rewritten by test (*20*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
   595        rewritten by test (*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
   557   
   596   
   558   $ hg olog c7f044602e9b --no-graph -Tjson | python -m json.tool
   597   $ hg obslog c7f044602e9b --no-graph -Tjson | python -m json.tool
   559   [
   598   [
   560       {
   599       {
   561           "debugobshistory.markers": [],
   600           "debugobshistory.markers": [],
   562           "debugobshistory.node": "c7f044602e9b",
   601           "debugobshistory.node": "c7f044602e9b",
   563           "debugobshistory.rev": 5,
   602           "debugobshistory.rev": 5,
   584           "debugobshistory.rev": 1,
   623           "debugobshistory.rev": 1,
   585           "debugobshistory.shortdescription": "A0"
   624           "debugobshistory.shortdescription": "A0"
   586       }
   625       }
   587   ]
   626   ]
   588 Check that debugobshistory on all heads show a coherent graph
   627 Check that debugobshistory on all heads show a coherent graph
   589   $ hg olog 2::5
   628   $ hg obslog 2::5
   590   o  1ae8bc733a14 (4) A0
   629   o  1ae8bc733a14 (4) A0
   591   |
   630   |
   592   | o  337fec4d2edc (2) A0
   631   | o  337fec4d2edc (2) A0
   593   |/
   632   |/
   594   | @  c7f044602e9b (5) A0
   633   | @  c7f044602e9b (5) A0
   595   |/
   634   |/
   596   | o  f257fde29c7a (3) A0
   635   | o  f257fde29c7a (3) A0
   597   |/
   636   |/
   598   x  de7290d8b885 (1) A0
   637   x  de7290d8b885 (1) A0
   599        rewritten by test (*20*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
   638        rewritten by test (*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
       
   639   
       
   640   $ hg obslog 5 --all
       
   641   o  1ae8bc733a14 (4) A0
       
   642   |
       
   643   | o  337fec4d2edc (2) A0
       
   644   |/
       
   645   | @  c7f044602e9b (5) A0
       
   646   |/
       
   647   | o  f257fde29c7a (3) A0
       
   648   |/
       
   649   x  de7290d8b885 (1) A0
       
   650        rewritten by test (*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
   600   
   651   
   601   $ hg update de7290d8b885
   652   $ hg update de7290d8b885
   602   abort: hidden revision 'de7290d8b885'!
   653   abort: hidden revision 'de7290d8b885'!
   603   (use --hidden to access hidden revisions)
   654   (use --hidden to access hidden revisions)
   604   [255]
   655   [255]
   664  Actual test
   715  Actual test
   665  -----------
   716  -----------
   666 
   717 
   667 Check that debugobshistory on the first folded revision show only
   718 Check that debugobshistory on the first folded revision show only
   668 the revision with the target
   719 the revision with the target
   669   $ hg olog --hidden 471f378eab4c
   720   $ hg obslog --hidden 471f378eab4c
   670   x  471f378eab4c (1) A0
   721   x  471f378eab4c (1) A0
   671        rewritten by test (*20*) as eb5a0daa2192 (glob)
   722        rewritten by test (*) as eb5a0daa2192 (glob)
   672   
   723   
   673 Check that debugobshistory on the second folded revision show only
   724 Check that with all option, all changesets are shown
   674 the revision with the target
   725   $ hg obslog --hidden --all 471f378eab4c
   675   $ hg olog --hidden 0dec01379d3b
       
   676   x  0dec01379d3b (2) B0
       
   677        rewritten by test (*20*) as eb5a0daa2192 (glob)
       
   678   
       
   679 Check that debugobshistory on the successor revision show a coherent
       
   680 graph
       
   681   $ hg olog eb5a0daa2192
       
   682   @    eb5a0daa2192 (3) C0
   726   @    eb5a0daa2192 (3) C0
   683   |\
   727   |\
   684   x |  0dec01379d3b (2) B0
   728   x |  0dec01379d3b (2) B0
   685    /     rewritten by test (*20*) as eb5a0daa2192 (glob)
   729    /     rewritten by test (*) as eb5a0daa2192 (glob)
   686   |
   730   |
   687   x  471f378eab4c (1) A0
   731   x  471f378eab4c (1) A0
   688        rewritten by test (*20*) as eb5a0daa2192 (glob)
   732        rewritten by test (*) as eb5a0daa2192 (glob)
   689   
   733   
   690   $ hg olog eb5a0daa2192 --no-graph -Tjson | python -m json.tool
   734 Check that debugobshistory on the second folded revision show only
       
   735 the revision with the target
       
   736   $ hg obslog --hidden 0dec01379d3b
       
   737   x  0dec01379d3b (2) B0
       
   738        rewritten by test (*) as eb5a0daa2192 (glob)
       
   739   
       
   740 Check that with all option, all changesets are shown
       
   741   $ hg obslog --hidden --all 0dec01379d3b
       
   742   @    eb5a0daa2192 (3) C0
       
   743   |\
       
   744   x |  0dec01379d3b (2) B0
       
   745    /     rewritten by test (*) as eb5a0daa2192 (glob)
       
   746   |
       
   747   x  471f378eab4c (1) A0
       
   748        rewritten by test (*) as eb5a0daa2192 (glob)
       
   749   
       
   750 Check that debugobshistory on the successor revision show a coherent
       
   751 graph
       
   752   $ hg obslog eb5a0daa2192
       
   753   @    eb5a0daa2192 (3) C0
       
   754   |\
       
   755   x |  0dec01379d3b (2) B0
       
   756    /     rewritten by test (*) as eb5a0daa2192 (glob)
       
   757   |
       
   758   x  471f378eab4c (1) A0
       
   759        rewritten by test (*) as eb5a0daa2192 (glob)
       
   760   
       
   761   $ hg obslog eb5a0daa2192 --no-graph -Tjson | python -m json.tool
   691   [
   762   [
   692       {
   763       {
   693           "debugobshistory.markers": [],
   764           "debugobshistory.markers": [],
   694           "debugobshistory.node": "eb5a0daa2192",
   765           "debugobshistory.node": "eb5a0daa2192",
   695           "debugobshistory.rev": 3,
   766           "debugobshistory.rev": 3,
   814   
   885   
   815 Actual test
   886 Actual test
   816 -----------
   887 -----------
   817 
   888 
   818 Check that debugobshistory on the divergent revision show both destinations
   889 Check that debugobshistory on the divergent revision show both destinations
   819   $ hg olog --hidden 471f378eab4c
   890   $ hg obslog --hidden 471f378eab4c
   820   x  471f378eab4c (1) A0
   891   x  471f378eab4c (1) A0
   821        rewritten by test (*20*) as 65b757b745b9 (glob)
   892        rewritten by test (*) as 65b757b745b9 (glob)
   822        rewritten by test (*20*) as fdf9bde5129a (glob)
   893        rewritten by test (*) as fdf9bde5129a (glob)
   823   
   894   
   824   $ hg olog --hidden 471f378eab4c --no-graph -Tjson | python -m json.tool
   895 
       
   896 Check that with all option, every changeset is shown
       
   897   $ hg obslog --hidden --all 471f378eab4c
       
   898   @  65b757b745b9 (3) A2
       
   899   |
       
   900   | o  fdf9bde5129a (2) A1
       
   901   |/
       
   902   x  471f378eab4c (1) A0
       
   903        rewritten by test (*) as 65b757b745b9 (glob)
       
   904        rewritten by test (*) as fdf9bde5129a (glob)
       
   905   
       
   906   $ hg obslog --hidden 471f378eab4c --no-graph -Tjson | python -m json.tool
   825   [
   907   [
   826       {
   908       {
   827           "debugobshistory.markers": [
   909           "debugobshistory.markers": [
   828               {
   910               {
   829                   "debugobshistory.marker_date": [
   911                   "debugobshistory.marker_date": [
   853           "debugobshistory.shortdescription": "A0"
   935           "debugobshistory.shortdescription": "A0"
   854       }
   936       }
   855   ]
   937   ]
   856 Check that debugobshistory on the first diverged revision show the revision
   938 Check that debugobshistory on the first diverged revision show the revision
   857 and the diverent one
   939 and the diverent one
   858   $ hg olog fdf9bde5129a
   940   $ hg obslog fdf9bde5129a
   859   o  fdf9bde5129a (2) A1
   941   o  fdf9bde5129a (2) A1
   860   |
   942   |
   861   x  471f378eab4c (1) A0
   943   x  471f378eab4c (1) A0
   862        rewritten by test (*20*) as 65b757b745b9 (glob)
   944        rewritten by test (*) as 65b757b745b9 (glob)
   863        rewritten by test (*20*) as fdf9bde5129a (glob)
   945        rewritten by test (*) as fdf9bde5129a (glob)
       
   946   
       
   947 
       
   948 Check that all option show all of them
       
   949   $ hg obslog fdf9bde5129a -a
       
   950   @  65b757b745b9 (3) A2
       
   951   |
       
   952   | o  fdf9bde5129a (2) A1
       
   953   |/
       
   954   x  471f378eab4c (1) A0
       
   955        rewritten by test (*) as 65b757b745b9 (glob)
       
   956        rewritten by test (*) as fdf9bde5129a (glob)
   864   
   957   
   865 Check that debugobshistory on the second diverged revision show the revision
   958 Check that debugobshistory on the second diverged revision show the revision
   866 and the diverent one
   959 and the diverent one
   867   $ hg olog 65b757b745b9
   960   $ hg obslog 65b757b745b9
   868   @  65b757b745b9 (3) A2
   961   @  65b757b745b9 (3) A2
   869   |
   962   |
   870   x  471f378eab4c (1) A0
   963   x  471f378eab4c (1) A0
   871        rewritten by test (*20*) as 65b757b745b9 (glob)
   964        rewritten by test (*) as 65b757b745b9 (glob)
   872        rewritten by test (*20*) as fdf9bde5129a (glob)
   965        rewritten by test (*) as fdf9bde5129a (glob)
       
   966   
       
   967 Check that all option show all of them
       
   968   $ hg obslog 65b757b745b9 -a
       
   969   @  65b757b745b9 (3) A2
       
   970   |
       
   971   | o  fdf9bde5129a (2) A1
       
   972   |/
       
   973   x  471f378eab4c (1) A0
       
   974        rewritten by test (*) as 65b757b745b9 (glob)
       
   975        rewritten by test (*) as fdf9bde5129a (glob)
   873   
   976   
   874 Check that debugobshistory on the both diverged revision show a coherent
   977 Check that debugobshistory on the both diverged revision show a coherent
   875 graph
   978 graph
   876   $ hg olog '65b757b745b9+fdf9bde5129a'
   979   $ hg obslog '65b757b745b9+fdf9bde5129a'
   877   @  65b757b745b9 (3) A2
   980   @  65b757b745b9 (3) A2
   878   |
   981   |
   879   | o  fdf9bde5129a (2) A1
   982   | o  fdf9bde5129a (2) A1
   880   |/
   983   |/
   881   x  471f378eab4c (1) A0
   984   x  471f378eab4c (1) A0
   882        rewritten by test (*20*) as 65b757b745b9 (glob)
   985        rewritten by test (*) as 65b757b745b9 (glob)
   883        rewritten by test (*20*) as fdf9bde5129a (glob)
   986        rewritten by test (*) as fdf9bde5129a (glob)
   884   
   987   
   885   $ hg olog '65b757b745b9+fdf9bde5129a' --no-graph -Tjson | python -m json.tool
   988   $ hg obslog '65b757b745b9+fdf9bde5129a' --no-graph -Tjson | python -m json.tool
   886   [
   989   [
   887       {
   990       {
   888           "debugobshistory.markers": [],
   991           "debugobshistory.markers": [],
   889           "debugobshistory.node": "65b757b745b9",
   992           "debugobshistory.node": "65b757b745b9",
   890           "debugobshistory.rev": 3,
   993           "debugobshistory.rev": 3,
  1004   
  1107   
  1005  Actual test
  1108  Actual test
  1006  -----------
  1109  -----------
  1007 
  1110 
  1008 Check that debugobshistory on head show a coherent graph
  1111 Check that debugobshistory on head show a coherent graph
  1009   $ hg olog eb5a0daa2192
  1112   $ hg obslog eb5a0daa2192
  1010   @    eb5a0daa2192 (4) C0
  1113   @    eb5a0daa2192 (4) C0
  1011   |\
  1114   |\
  1012   x |  471f378eab4c (1) A0
  1115   x |  471f378eab4c (1) A0
  1013    /     rewritten by test (*20*) as eb5a0daa2192 (glob)
  1116    /     rewritten by test (*) as eb5a0daa2192 (glob)
  1014   |
  1117   |
  1015   x  b7ea6d14e664 (3) B1
  1118   x  b7ea6d14e664 (3) B1
  1016   |    rewritten by test (*20*) as eb5a0daa2192 (glob)
  1119   |    rewritten by test (*) as eb5a0daa2192 (glob)
  1017   |
  1120   |
  1018   x  0dec01379d3b (2) B0
  1121   x  0dec01379d3b (2) B0
  1019        rewritten by test (*20*) as b7ea6d14e664 (glob)
  1122        rewritten by test (*) as b7ea6d14e664 (glob)
  1020   
  1123   
  1021   $ hg olog eb5a0daa2192 --no-graph -Tjson | python -m json.tool
  1124 Check that obslog on ROOT with all option show everything
       
  1125   $ hg obslog 1 --hidden --all
       
  1126   @    eb5a0daa2192 (4) C0
       
  1127   |\
       
  1128   x |  471f378eab4c (1) A0
       
  1129    /     rewritten by test (*) as eb5a0daa2192 (glob)
       
  1130   |
       
  1131   x  b7ea6d14e664 (3) B1
       
  1132   |    rewritten by test (*) as eb5a0daa2192 (glob)
       
  1133   |
       
  1134   x  0dec01379d3b (2) B0
       
  1135        rewritten by test (*) as b7ea6d14e664 (glob)
       
  1136   
       
  1137   $ hg obslog eb5a0daa2192 --no-graph -Tjson | python -m json.tool
  1022   [
  1138   [
  1023       {
  1139       {
  1024           "debugobshistory.markers": [],
  1140           "debugobshistory.markers": [],
  1025           "debugobshistory.node": "eb5a0daa2192",
  1141           "debugobshistory.node": "eb5a0daa2192",
  1026           "debugobshistory.rev": 4,
  1142           "debugobshistory.rev": 4,
  1168      summary:     ROOT
  1284      summary:     ROOT
  1169   
  1285   
  1170  Actual test
  1286  Actual test
  1171  -----------
  1287  -----------
  1172 
  1288 
  1173   $ hg olog 7a230b46bf61
  1289   $ hg obslog 7a230b46bf61
  1174   @  7a230b46bf61 (3) A2
  1290   @  7a230b46bf61 (3) A2
  1175   |
  1291   |
  1176   x  fdf9bde5129a (2) A1
  1292   x  fdf9bde5129a (2) A1
  1177   |    rewritten by test (*20*) as 7a230b46bf61 (glob)
  1293   |    rewritten by test (*) as 7a230b46bf61 (glob)
  1178   |
  1294   |
  1179   x  471f378eab4c (1) A0
  1295   x  471f378eab4c (1) A0
  1180        rewritten by test (*20*) as fdf9bde5129a (glob)
  1296        rewritten by test (*) as fdf9bde5129a (glob)
  1181   
  1297   
  1182   $ cd $TESTTMP/local-remote-markers-2
  1298   $ cd $TESTTMP/local-remote-markers-2
  1183   $ hg pull
  1299   $ hg pull
  1184   pulling from $TESTTMP/local-remote-markers-1
  1300   pulling from $TESTTMP/local-remote-markers-1
  1185   searching for changes
  1301   searching for changes
  1191   (run 'hg heads' to see heads, 'hg merge' to merge)
  1307   (run 'hg heads' to see heads, 'hg merge' to merge)
  1192   working directory parent is obsolete! (471f378eab4c)
  1308   working directory parent is obsolete! (471f378eab4c)
  1193   (use 'hg evolve' to update to its successor: 7a230b46bf61)
  1309   (use 'hg evolve' to update to its successor: 7a230b46bf61)
  1194 Check that debugobshistory works with markers pointing to missing local
  1310 Check that debugobshistory works with markers pointing to missing local
  1195 changectx
  1311 changectx
  1196   $ hg olog 7a230b46bf61
  1312   $ hg obslog 7a230b46bf61
  1197   o  7a230b46bf61 (2) A2
  1313   o  7a230b46bf61 (2) A2
  1198   |
  1314   |
  1199   x  fdf9bde5129a
  1315   x  fdf9bde5129a
  1200   |    rewritten by test (*20*) as 7a230b46bf61 (glob)
  1316   |    rewritten by test (*) as 7a230b46bf61 (glob)
  1201   |
  1317   |
  1202   @  471f378eab4c (1) A0
  1318   @  471f378eab4c (1) A0
  1203        rewritten by test (*20*) as fdf9bde5129a (glob)
  1319        rewritten by test (*) as fdf9bde5129a (glob)
  1204   
  1320   
  1205   $ hg olog 7a230b46bf61 --color=debug
  1321   $ hg obslog 7a230b46bf61 --color=debug
  1206   o  [evolve.node|7a230b46bf61] [evolve.rev|(2)] [evolve.short_description|A2]
  1322   o  [evolve.node|7a230b46bf61] [evolve.rev|(2)] [evolve.short_description|A2]
  1207   |
  1323   |
  1208   x  [evolve.node evolve.missing_change_ctx|fdf9bde5129a]
  1324   x  [evolve.node evolve.missing_change_ctx|fdf9bde5129a]
  1209   |    [evolve.verb|rewritten] by [evolve.user|test] [evolve.date|(*20*)] as [evolve.node|7a230b46bf61] (glob)
  1325   |    [evolve.verb|rewritten] by [evolve.user|test] [evolve.date|(*)] as [evolve.node|7a230b46bf61] (glob)
  1210   |
  1326   |
  1211   @  [evolve.node|471f378eab4c] [evolve.rev|(1)] [evolve.short_description|A0]
  1327   @  [evolve.node|471f378eab4c] [evolve.rev|(1)] [evolve.short_description|A0]
  1212        [evolve.verb|rewritten] by [evolve.user|test] [evolve.date|(*20*)] as [evolve.node|fdf9bde5129a] (glob)
  1328        [evolve.verb|rewritten] by [evolve.user|test] [evolve.date|(*)] as [evolve.node|fdf9bde5129a] (glob)
  1213   
  1329   
  1214 
       
  1215 Test with cycle
       
  1216 ===============
       
  1217 
       
  1218 Test setup
       
  1219 ----------
       
  1220 
       
  1221   $ hg init $TESTTMP/cycle
       
  1222   $ cd $TESTTMP/cycle
       
  1223   $ mkcommit ROOT
       
  1224   $ mkcommit A
       
  1225   $ mkcommit B
       
  1226   $ mkcommit C
       
  1227   $ hg log -G
       
  1228   @  changeset:   3:a8df460dbbfe
       
  1229   |  tag:         tip
       
  1230   |  user:        test
       
  1231   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1232   |  summary:     C
       
  1233   |
       
  1234   o  changeset:   2:c473644ee0e9
       
  1235   |  user:        test
       
  1236   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1237   |  summary:     B
       
  1238   |
       
  1239   o  changeset:   1:2a34000d3544
       
  1240   |  user:        test
       
  1241   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1242   |  summary:     A
       
  1243   |
       
  1244   o  changeset:   0:ea207398892e
       
  1245      user:        test
       
  1246      date:        Thu Jan 01 00:00:00 1970 +0000
       
  1247      summary:     ROOT
       
  1248   
       
  1249 Create a cycle
       
  1250   $ hg prune -s "desc(B)" "desc(A)"
       
  1251   1 changesets pruned
       
  1252   2 new unstable changesets
       
  1253   $ hg prune -s "desc(C)" "desc(B)"
       
  1254   1 changesets pruned
       
  1255   $ hg prune -s "desc(A)" "desc(C)"
       
  1256   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
       
  1257   working directory now at 2a34000d3544
       
  1258   1 changesets pruned
       
  1259   $ hg log --hidden -G
       
  1260   x  changeset:   3:a8df460dbbfe
       
  1261   |  tag:         tip
       
  1262   |  user:        test
       
  1263   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1264   |  summary:     C
       
  1265   |
       
  1266   x  changeset:   2:c473644ee0e9
       
  1267   |  user:        test
       
  1268   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1269   |  summary:     B
       
  1270   |
       
  1271   @  changeset:   1:2a34000d3544
       
  1272   |  user:        test
       
  1273   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1274   |  summary:     A
       
  1275   |
       
  1276   o  changeset:   0:ea207398892e
       
  1277      user:        test
       
  1278      date:        Thu Jan 01 00:00:00 1970 +0000
       
  1279      summary:     ROOT
       
  1280   
       
  1281 Actual test
       
  1282 -----------
       
  1283 
       
  1284 Check that debugobshistory never crash on a cycle
       
  1285 
       
  1286   $ hg olog "desc(A)" --hidden
       
  1287   @  2a34000d3544 (1) A
       
  1288   |    rewritten by test (*20*) as c473644ee0e9 (glob)
       
  1289   |
       
  1290   x  a8df460dbbfe (3) C
       
  1291   |    rewritten by test (*20*) as 2a34000d3544 (glob)
       
  1292   |
       
  1293   x  c473644ee0e9 (2) B
       
  1294   |    rewritten by test (*20*) as a8df460dbbfe (glob)
       
  1295   |
       
  1296 
       
  1297   $ hg olog "desc(B)" --hidden
       
  1298   @  2a34000d3544 (1) A
       
  1299   |    rewritten by test (*20*) as c473644ee0e9 (glob)
       
  1300   |
       
  1301   x  a8df460dbbfe (3) C
       
  1302   |    rewritten by test (*20*) as 2a34000d3544 (glob)
       
  1303   |
       
  1304   x  c473644ee0e9 (2) B
       
  1305   |    rewritten by test (*20*) as a8df460dbbfe (glob)
       
  1306   |
       
  1307 
       
  1308   $ hg olog "desc(C)" --hidden
       
  1309   @  2a34000d3544 (1) A
       
  1310   |    rewritten by test (*20*) as c473644ee0e9 (glob)
       
  1311   |
       
  1312   x  a8df460dbbfe (3) C
       
  1313   |    rewritten by test (*20*) as 2a34000d3544 (glob)
       
  1314   |
       
  1315   x  c473644ee0e9 (2) B
       
  1316   |    rewritten by test (*20*) as a8df460dbbfe (glob)
       
  1317   |
       
  1318 
       
  1319 Test with multiple cyles
       
  1320 ========================
       
  1321 
       
  1322 Test setup
       
  1323 ----------
       
  1324 
       
  1325   $ hg init $TESTTMP/multiple-cycle
       
  1326   $ cd $TESTTMP/multiple-cycle
       
  1327   $ mkcommit ROOT
       
  1328   $ mkcommit A
       
  1329   $ mkcommit B
       
  1330   $ mkcommit C
       
  1331   $ mkcommit D
       
  1332   $ mkcommit E
       
  1333   $ mkcommit F
       
  1334   $ hg log -G
       
  1335   @  changeset:   6:d9f908fde1a1
       
  1336   |  tag:         tip
       
  1337   |  user:        test
       
  1338   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1339   |  summary:     F
       
  1340   |
       
  1341   o  changeset:   5:0da815c333f6
       
  1342   |  user:        test
       
  1343   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1344   |  summary:     E
       
  1345   |
       
  1346   o  changeset:   4:868d2e0eb19c
       
  1347   |  user:        test
       
  1348   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1349   |  summary:     D
       
  1350   |
       
  1351   o  changeset:   3:a8df460dbbfe
       
  1352   |  user:        test
       
  1353   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1354   |  summary:     C
       
  1355   |
       
  1356   o  changeset:   2:c473644ee0e9
       
  1357   |  user:        test
       
  1358   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1359   |  summary:     B
       
  1360   |
       
  1361   o  changeset:   1:2a34000d3544
       
  1362   |  user:        test
       
  1363   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1364   |  summary:     A
       
  1365   |
       
  1366   o  changeset:   0:ea207398892e
       
  1367      user:        test
       
  1368      date:        Thu Jan 01 00:00:00 1970 +0000
       
  1369      summary:     ROOT
       
  1370   
       
  1371 Create a first cycle
       
  1372   $ hg prune -s "desc(B)" "desc(A)"
       
  1373   1 changesets pruned
       
  1374   5 new unstable changesets
       
  1375   $ hg prune -s "desc(C)" "desc(B)"
       
  1376   1 changesets pruned
       
  1377   $ hg prune --split -s "desc(A)" -s "desc(D)" "desc(C)"
       
  1378   1 changesets pruned
       
  1379 And create a second one
       
  1380   $ hg prune -s "desc(E)" "desc(D)"
       
  1381   1 changesets pruned
       
  1382   $ hg prune -s "desc(F)" "desc(E)"
       
  1383   1 changesets pruned
       
  1384   $ hg prune -s "desc(D)" "desc(F)"
       
  1385   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
       
  1386   working directory now at 868d2e0eb19c
       
  1387   1 changesets pruned
       
  1388   $ hg log --hidden -G
       
  1389   x  changeset:   6:d9f908fde1a1
       
  1390   |  tag:         tip
       
  1391   |  user:        test
       
  1392   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1393   |  summary:     F
       
  1394   |
       
  1395   x  changeset:   5:0da815c333f6
       
  1396   |  user:        test
       
  1397   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1398   |  summary:     E
       
  1399   |
       
  1400   @  changeset:   4:868d2e0eb19c
       
  1401   |  user:        test
       
  1402   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1403   |  summary:     D
       
  1404   |
       
  1405   x  changeset:   3:a8df460dbbfe
       
  1406   |  user:        test
       
  1407   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1408   |  summary:     C
       
  1409   |
       
  1410   x  changeset:   2:c473644ee0e9
       
  1411   |  user:        test
       
  1412   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1413   |  summary:     B
       
  1414   |
       
  1415   x  changeset:   1:2a34000d3544
       
  1416   |  user:        test
       
  1417   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
  1418   |  summary:     A
       
  1419   |
       
  1420   o  changeset:   0:ea207398892e
       
  1421      user:        test
       
  1422      date:        Thu Jan 01 00:00:00 1970 +0000
       
  1423      summary:     ROOT
       
  1424   
       
  1425 Actual test
       
  1426 -----------
       
  1427 
       
  1428 Check that debugobshistory never crash on a cycle
       
  1429 
       
  1430   $ hg olog "desc(D)" --hidden
       
  1431   x  0da815c333f6 (5) E
       
  1432   |    rewritten by test (*20*) as d9f908fde1a1 (glob)
       
  1433   |
       
  1434   @    868d2e0eb19c (4) D
       
  1435   |\     rewritten by test (*20*) as 0da815c333f6 (glob)
       
  1436   | |
       
  1437   | x  d9f908fde1a1 (6) F
       
  1438   | |    rewritten by test (*20*) as 868d2e0eb19c (glob)
       
  1439   | |
       
  1440   +---x  2a34000d3544 (1) A
       
  1441   | |      rewritten by test (*20*) as c473644ee0e9 (glob)
       
  1442   | |
       
  1443   x |  a8df460dbbfe (3) C
       
  1444   | |    rewritten by test (*20*) as 2a34000d3544, 868d2e0eb19c (glob)
       
  1445   | |
       
  1446   x |  c473644ee0e9 (2) B
       
  1447   | |    rewritten by test (*20*) as a8df460dbbfe (glob)
       
  1448   | |
       
  1449 
       
  1450 Check the json output is valid in this case
       
  1451 
       
  1452   $ hg olog "desc(D)" --hidden --no-graph -Tjson | python -m json.tool
       
  1453   [
       
  1454       {
       
  1455           "debugobshistory.markers": [
       
  1456               {
       
  1457                   "debugobshistory.marker_date": [
       
  1458                       *, (glob)
       
  1459                       0
       
  1460                   ],
       
  1461                   "debugobshistory.marker_user": "test",
       
  1462                   "debugobshistory.succnodes": [
       
  1463                       "0da815c333f6"
       
  1464                   ],
       
  1465                   "debugobshistory.verb": "rewritten"
       
  1466               }
       
  1467           ],
       
  1468           "debugobshistory.node": "868d2e0eb19c",
       
  1469           "debugobshistory.rev": 4,
       
  1470           "debugobshistory.shortdescription": "D"
       
  1471       },
       
  1472       {
       
  1473           "debugobshistory.markers": [
       
  1474               {
       
  1475                   "debugobshistory.marker_date": [
       
  1476                       *, (glob)
       
  1477                       0
       
  1478                   ],
       
  1479                   "debugobshistory.marker_user": "test",
       
  1480                   "debugobshistory.succnodes": [
       
  1481                       "868d2e0eb19c"
       
  1482                   ],
       
  1483                   "debugobshistory.verb": "rewritten"
       
  1484               }
       
  1485           ],
       
  1486           "debugobshistory.node": "d9f908fde1a1",
       
  1487           "debugobshistory.rev": 6,
       
  1488           "debugobshistory.shortdescription": "F"
       
  1489       },
       
  1490       {
       
  1491           "debugobshistory.markers": [
       
  1492               {
       
  1493                   "debugobshistory.marker_date": [
       
  1494                       *, (glob)
       
  1495                       0
       
  1496                   ],
       
  1497                   "debugobshistory.marker_user": "test",
       
  1498                   "debugobshistory.succnodes": [
       
  1499                       "d9f908fde1a1"
       
  1500                   ],
       
  1501                   "debugobshistory.verb": "rewritten"
       
  1502               }
       
  1503           ],
       
  1504           "debugobshistory.node": "0da815c333f6",
       
  1505           "debugobshistory.rev": 5,
       
  1506           "debugobshistory.shortdescription": "E"
       
  1507       },
       
  1508       {
       
  1509           "debugobshistory.markers": [
       
  1510               {
       
  1511                   "debugobshistory.marker_date": [
       
  1512                       *, (glob)
       
  1513                       0
       
  1514                   ],
       
  1515                   "debugobshistory.marker_user": "test",
       
  1516                   "debugobshistory.succnodes": [
       
  1517                       "2a34000d3544",
       
  1518                       "868d2e0eb19c"
       
  1519                   ],
       
  1520                   "debugobshistory.verb": "rewritten"
       
  1521               }
       
  1522           ],
       
  1523           "debugobshistory.node": "a8df460dbbfe",
       
  1524           "debugobshistory.rev": 3,
       
  1525           "debugobshistory.shortdescription": "C"
       
  1526       },
       
  1527       {
       
  1528           "debugobshistory.markers": [
       
  1529               {
       
  1530                   "debugobshistory.marker_date": [
       
  1531                       *, (glob)
       
  1532                       0
       
  1533                   ],
       
  1534                   "debugobshistory.marker_user": "test",
       
  1535                   "debugobshistory.succnodes": [
       
  1536                       "a8df460dbbfe"
       
  1537                   ],
       
  1538                   "debugobshistory.verb": "rewritten"
       
  1539               }
       
  1540           ],
       
  1541           "debugobshistory.node": "c473644ee0e9",
       
  1542           "debugobshistory.rev": 2,
       
  1543           "debugobshistory.shortdescription": "B"
       
  1544       },
       
  1545       {
       
  1546           "debugobshistory.markers": [
       
  1547               {
       
  1548                   "debugobshistory.marker_date": [
       
  1549                       *, (glob)
       
  1550                       0
       
  1551                   ],
       
  1552                   "debugobshistory.marker_user": "test",
       
  1553                   "debugobshistory.succnodes": [
       
  1554                       "c473644ee0e9"
       
  1555                   ],
       
  1556                   "debugobshistory.verb": "rewritten"
       
  1557               }
       
  1558           ],
       
  1559           "debugobshistory.node": "2a34000d3544",
       
  1560           "debugobshistory.rev": 1,
       
  1561           "debugobshistory.shortdescription": "A"
       
  1562       }
       
  1563   ]