annotate tests/test-exchange-B2.t @ 1358:3f5db977d46f

evolve: add a more complex test for evolve --rev The previous tests of evolve --rev would have passed with an ordering of revs by increasing revision numbers. This patch adds a test that would fail if that was what we were doing and therefore tests the implementation better.
author Laurent Charignon <lcharignon@fb.com>
date Tue, 02 Jun 2015 15:23:50 -0700
parents a49f2e7a2755
children 778afb036245
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
1
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
2 Initial setup
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
3
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
4 $ . $TESTDIR/_exc-util.sh
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
5
984
b286f77d680c tests: fix grammar, spelling, punctuation in comments
Greg Ward <greg@gerg.ca>
parents: 957
diff changeset
6 === B.2 Pruned changeset on head: nothing pushed ===
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
7
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
8 .. {{{
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
9 .. ⊗ A
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
10 .. |
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
11 .. ● O
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
12 .. }}}
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
13 ..
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
14 .. Marker exist from:
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
15 ..
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
16 .. * A (prune)
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
17 ..
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
18 .. Command run:
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
19 ..
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
20 .. * hg push -r O
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
21 .. * hg push
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
22 ..
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
23 .. Expected exchange:
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
24 ..
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
25 .. * prune marker for A
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
26
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
27
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
28 $ setuprepos B.2
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
29 creating test repo for test case B.2
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
30 - pulldest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
31 - main
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
32 - pushdest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
33 cd into `main` and proceed with env setup
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
34 $ cd main
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
35 $ mkcommit A
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
36 $ hg prune -qd '0 0' .
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
37 $ hg log -G --hidden
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
38 x f5bc6836db60 (draft): A
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
39 |
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
40 @ a9bdc8b26820 (public): O
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
41
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
42 $ hg debugobsolete
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
43 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
44 $ cd ..
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
45 $ cd ..
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
46
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
47
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
48 $ cp -r B.2 B.2.a
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
49 $ cp -r B.2 B.2.b
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
50
984
b286f77d680c tests: fix grammar, spelling, punctuation in comments
Greg Ward <greg@gerg.ca>
parents: 957
diff changeset
51 Actual Test (explicit push version)
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
52 -----------------------------------
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
53
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
54 $ dotest B.2.a O
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
55 ## Running testcase B.2.a
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
56 # testing echange of "O" (a9bdc8b26820)
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
57 ## initial state
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
58 # obstore: main
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
59 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
60 # obstore: pushdest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
61 # obstore: pulldest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
62 ## pushing "O" from main to pushdest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
63 pushing to pushdest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
64 searching for changes
1078
5717d023da63 obsexc: use the common discovery
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1067
diff changeset
65 no changes found
1093
a49f2e7a2755 obsexch: respect todosteps when using the old push
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1088
diff changeset
66 remote: 1 new obsolescence markers
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
67 ## post push state
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
68 # obstore: main
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
69 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
70 # obstore: pushdest
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
71 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
72 # obstore: pulldest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
73 ## pulling "a9bdc8b26820" from main into pulldest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
74 pulling from main
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
75 no changes found
1093
a49f2e7a2755 obsexch: respect todosteps when using the old push
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1088
diff changeset
76 1 new obsolescence markers
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
77 ## post pull state
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
78 # obstore: main
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
79 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
80 # obstore: pushdest
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
81 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
82 # obstore: pulldest
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
83 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
84
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
85 Actual Test (bare push version)
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
86 -----------------------------------
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
87
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
88 $ dotest B.2.b
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
89 ## Running testcase B.2.b
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
90 ## initial state
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
91 # obstore: main
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
92 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
93 # obstore: pushdest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
94 # obstore: pulldest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
95 ## pushing from main to pushdest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
96 pushing to pushdest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
97 searching for changes
1078
5717d023da63 obsexc: use the common discovery
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1067
diff changeset
98 no changes found
1093
a49f2e7a2755 obsexch: respect todosteps when using the old push
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1088
diff changeset
99 remote: 1 new obsolescence markers
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
100 ## post push state
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
101 # obstore: main
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
102 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
103 # obstore: pushdest
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
104 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
105 # obstore: pulldest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
106 ## pulling from main into pulldest
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
107 pulling from main
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
108 searching for changes
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
109 no changes found
1093
a49f2e7a2755 obsexch: respect todosteps when using the old push
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1088
diff changeset
110 1 new obsolescence markers
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
111 ## post pull state
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
112 # obstore: main
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
113 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
114 # obstore: pushdest
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
115 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
838
b4087501d6a5 exchange: add test case for B.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
116 # obstore: pulldest
1067
5d063fed9e3d evolve: yield to relevant markers handling in core
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1065
diff changeset
117 f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}