Mercurial > evolve
annotate tests/test-exchange-A4.t @ 905:b177fde040dd
exchange: use fixed order for obstore content
The obsstore content seems unstable from one version of python to another (we
most certainly use some dict) we fix the order once and for all.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Tue, 22 Apr 2014 17:00:24 -0700 |
parents | cf803a36e3fb |
children | 010c7e4aa820 |
rev | line source |
---|---|
833
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
1 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
2 Initial setup |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
3 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
4 $ . $TESTDIR/_exc-util.sh |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
5 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
6 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
7 === A.4 Push in the middle of the obsolescence chain === |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
8 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
9 .. (Where we show that we should not push the marker without the successors) |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
10 .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
11 .. {{{ |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
12 .. B ◔ |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
13 .. | |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
14 .. A⇠ø⇠○ A' |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
15 .. |/ |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
16 .. ● O |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
17 .. }}} |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
18 .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
19 .. Marker exist from: |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
20 .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
21 .. * `Aø⇠○ A'` |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
22 .. * chain from A |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
23 .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
24 .. Command run: |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
25 .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
26 .. * hg push -r B |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
27 .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
28 .. Expected exchange: |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
29 .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
30 .. * Chain from A |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
31 .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
32 .. Expected Exclude: |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
33 .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
34 .. * `Aø⇠○ A'` |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
35 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
36 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
37 initial |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
38 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
39 $ setuprepos A.4 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
40 creating test repo for test case A.4 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
41 - pulldest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
42 - main |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
43 - pushdest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
44 cd into `main` and proceed with env setup |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
45 $ cd main |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
46 $ mkcommit A0 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
47 $ mkcommit B |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
48 $ hg update 0 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
49 0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
50 $ mkcommit A1 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
51 created new head |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
52 $ hg debugobsolete aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa `getid 'desc(A0)'` |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
53 $ hg debugobsolete `getid 'desc(A0)'` `getid 'desc(A1)'` |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
54 $ hg log -G --hidden |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
55 @ e5ea8f9c7314 (draft): A1 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
56 | |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
57 | o 06055a7959d4 (draft): B |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
58 | | |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
59 | x 28b51eb45704 (draft): A0 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
60 |/ |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
61 o a9bdc8b26820 (public): O |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
62 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
63 $ hg debugobsolete |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
64 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'} |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
65 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {'date': '', 'user': 'test'} |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
66 $ cd .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
67 $ cd .. |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
68 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
69 Actual Test for first version (changeset unknown remotly) |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
70 --------------------------------------------------------- |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
71 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
72 $ dotest A.4 B -f |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
73 ## Running testcase A.4 |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
74 # testing echange of "B" (06055a7959d4) |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
75 ## initial state |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
76 # obstore: main |
905
b177fde040dd
exchange: use fixed order for obstore content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
833
diff
changeset
|
77 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {'date': '', 'user': 'test'} |
833
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
78 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'} |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
79 # obstore: pushdest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
80 # obstore: pulldest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
81 ## pushing "B" from main to pushdest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
82 pushing to pushdest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
83 searching for changes |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
84 adding changesets |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
85 adding manifests |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
86 adding file changes |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
87 added 2 changesets with 2 changes to 2 files |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
88 OBSEXC: computing relevant nodes |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
89 OBSEXC: computing markers relevant to 3 nodes |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
90 OBSEXC: encoding 1 markers |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
91 OBSEXC: sending 1 pushkey payload (78 bytes) |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
92 OBSEXC: DONE |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
93 ## post push state |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
94 # obstore: main |
905
b177fde040dd
exchange: use fixed order for obstore content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
833
diff
changeset
|
95 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {'date': '', 'user': 'test'} |
833
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
96 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'} |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
97 # obstore: pushdest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
98 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'} |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
99 # obstore: pulldest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
100 ## pulling "06055a7959d4" from main into pulldest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
101 pulling from main |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
102 searching for changes |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
103 adding changesets |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
104 adding manifests |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
105 adding file changes |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
106 added 2 changesets with 2 changes to 2 files |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
107 OBSEXC: pull obsolescence markers |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
108 OBSEXC: merging obsolescence markers (62 bytes) |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
109 OBSEXC: 1 markers added |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
110 OBSEXC: DONE |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
111 (run 'hg update' to get a working copy) |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
112 ## post pull state |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
113 # obstore: main |
905
b177fde040dd
exchange: use fixed order for obstore content
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
833
diff
changeset
|
114 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {'date': '', 'user': 'test'} |
833
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
115 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'} |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
116 # obstore: pushdest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
117 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'} |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
118 # obstore: pulldest |
cf803a36e3fb
exchange: add test case for A.4
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
119 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'} |