diff tests/test-evolve-obshistory.t @ 2484:262d684851dc

obshistory: add the all option to obslog to show the while obs tree Add a --all option to obslog in order to display also the successors of each obs markers. It has the effect of showing a more comprehensive graph when a split or a divergence happened.
author Boris Feld <boris.feld@octobus.net>
date Tue, 23 May 2017 19:48:04 +0200
parents db565cc05987
children d3d686f05458 abe6dfbdc744
line wrap: on
line diff
--- a/tests/test-evolve-obshistory.t	Fri May 26 16:12:07 2017 +0200
+++ b/tests/test-evolve-obshistory.t	Tue May 23 19:48:04 2017 +0200
@@ -340,6 +340,15 @@
   x  471597cad322 (1) A0
        rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
   
+With the all option, it should show the three changesets
+  $ hg obslog --all 337fec4d2edc
+  o  337fec4d2edc (2) A0
+  |
+  | @  f257fde29c7a (3) A0
+  |/
+  x  471597cad322 (1) A0
+       rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
+  
 Check that debugobshistory on the second successor after split show
 the revision plus the splitted one
   $ hg obslog f257fde29c7a
@@ -348,6 +357,24 @@
   x  471597cad322 (1) A0
        rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
   
+With the all option, it should show the three changesets
+  $ hg obslog f257fde29c7a --all
+  o  337fec4d2edc (2) A0
+  |
+  | @  f257fde29c7a (3) A0
+  |/
+  x  471597cad322 (1) A0
+       rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
+  
+Obslog with all option all should also works on the splitted commit
+  $ hg obslog -a 471597cad322 --hidden
+  o  337fec4d2edc (2) A0
+  |
+  | @  f257fde29c7a (3) A0
+  |/
+  x  471597cad322 (1) A0
+       rewritten by test (*) as 337fec4d2edc, f257fde29c7a (glob)
+  
 Check that debugobshistory on both successors after split show
 a coherent graph
   $ hg obslog 'f257fde29c7a+337fec4d2edc'
@@ -524,6 +551,18 @@
   x  de7290d8b885 (1) A0
        rewritten by test (*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
   
+  $ hg obslog de7290d8b885 --hidden --all
+  o  1ae8bc733a14 (4) A0
+  |
+  | o  337fec4d2edc (2) A0
+  |/
+  | @  c7f044602e9b (5) A0
+  |/
+  | o  f257fde29c7a (3) A0
+  |/
+  x  de7290d8b885 (1) A0
+       rewritten by test (*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
+  
   $ hg obslog de7290d8b885 --hidden --no-graph -Tjson | python -m json.tool
   [
       {
@@ -597,6 +636,18 @@
   x  de7290d8b885 (1) A0
        rewritten by test (*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
   
+  $ hg obslog 5 --all
+  o  1ae8bc733a14 (4) A0
+  |
+  | o  337fec4d2edc (2) A0
+  |/
+  | @  c7f044602e9b (5) A0
+  |/
+  | o  f257fde29c7a (3) A0
+  |/
+  x  de7290d8b885 (1) A0
+       rewritten by test (*) as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a (glob)
+  
   $ hg update de7290d8b885
   abort: hidden revision 'de7290d8b885'!
   (use --hidden to access hidden revisions; successors: 337fec4d2edc, f257fde29c7a and 2 more)
@@ -669,12 +720,32 @@
   x  471f378eab4c (1) A0
        rewritten by test (*) as eb5a0daa2192 (glob)
   
+Check that with all option, all changesets are shown
+  $ hg obslog --hidden --all 471f378eab4c
+  @    eb5a0daa2192 (3) C0
+  |\
+  x |  0dec01379d3b (2) B0
+   /     rewritten by test (*) as eb5a0daa2192 (glob)
+  |
+  x  471f378eab4c (1) A0
+       rewritten by test (*) as eb5a0daa2192 (glob)
+  
 Check that debugobshistory on the second folded revision show only
 the revision with the target
   $ hg obslog --hidden 0dec01379d3b
   x  0dec01379d3b (2) B0
        rewritten by test (*) as eb5a0daa2192 (glob)
   
+Check that with all option, all changesets are shown
+  $ hg obslog --hidden --all 0dec01379d3b
+  @    eb5a0daa2192 (3) C0
+  |\
+  x |  0dec01379d3b (2) B0
+   /     rewritten by test (*) as eb5a0daa2192 (glob)
+  |
+  x  471f378eab4c (1) A0
+       rewritten by test (*) as eb5a0daa2192 (glob)
+  
 Check that debugobshistory on the successor revision show a coherent
 graph
   $ hg obslog eb5a0daa2192
@@ -820,6 +891,17 @@
        rewritten by test (*) as 65b757b745b9 (glob)
        rewritten by test (*) as fdf9bde5129a (glob)
   
+
+Check that with all option, every changeset is shown
+  $ hg obslog --hidden --all 471f378eab4c
+  @  65b757b745b9 (3) A2
+  |
+  | o  fdf9bde5129a (2) A1
+  |/
+  x  471f378eab4c (1) A0
+       rewritten by test (*) as 65b757b745b9 (glob)
+       rewritten by test (*) as fdf9bde5129a (glob)
+  
   $ hg obslog --hidden 471f378eab4c --no-graph -Tjson | python -m json.tool
   [
       {
@@ -861,6 +943,17 @@
        rewritten by test (*) as 65b757b745b9 (glob)
        rewritten by test (*) as fdf9bde5129a (glob)
   
+
+Check that all option show all of them
+  $ hg obslog fdf9bde5129a -a
+  @  65b757b745b9 (3) A2
+  |
+  | o  fdf9bde5129a (2) A1
+  |/
+  x  471f378eab4c (1) A0
+       rewritten by test (*) as 65b757b745b9 (glob)
+       rewritten by test (*) as fdf9bde5129a (glob)
+  
 Check that debugobshistory on the second diverged revision show the revision
 and the diverent one
   $ hg obslog 65b757b745b9
@@ -870,6 +963,16 @@
        rewritten by test (*) as 65b757b745b9 (glob)
        rewritten by test (*) as fdf9bde5129a (glob)
   
+Check that all option show all of them
+  $ hg obslog 65b757b745b9 -a
+  @  65b757b745b9 (3) A2
+  |
+  | o  fdf9bde5129a (2) A1
+  |/
+  x  471f378eab4c (1) A0
+       rewritten by test (*) as 65b757b745b9 (glob)
+       rewritten by test (*) as fdf9bde5129a (glob)
+  
 Check that debugobshistory on the both diverged revision show a coherent
 graph
   $ hg obslog '65b757b745b9+fdf9bde5129a'
@@ -1017,6 +1120,19 @@
   x  0dec01379d3b (2) B0
        rewritten by test (*) as b7ea6d14e664 (glob)
   
+Check that obslog on ROOT with all option show everything
+  $ hg obslog 1 --hidden --all
+  @    eb5a0daa2192 (4) C0
+  |\
+  x |  471f378eab4c (1) A0
+   /     rewritten by test (*) as eb5a0daa2192 (glob)
+  |
+  x  b7ea6d14e664 (3) B1
+  |    rewritten by test (*) as eb5a0daa2192 (glob)
+  |
+  x  0dec01379d3b (2) B0
+       rewritten by test (*) as b7ea6d14e664 (glob)
+  
   $ hg obslog eb5a0daa2192 --no-graph -Tjson | python -m json.tool
   [
       {