comparison tests/test-evolve-obshistory.t @ 2531:d3d686f05458 mercurial-4.1

test-compat: merge with stable Nothing special to report, minor test-metaedit.t output change.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 31 May 2017 14:21:18 +0200
parents 0405bbda7402 262d684851dc
children ca157d06b2dc 54ac473663ff
comparison
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 ]