annotate tests/test-exchange-obsmarkers-case-C3.t @ 3573:d53277cdc1e7

evolve: handle stabilization of merge changeset with both parents obsoleted This patch adds logic to stabilize an orphan merge changeset having both parents obsoleted. The logic tries to first stabilize the merge changeset on successor of second parent and then stabilize the new changeset formed on the successor of first parent. We are stabilizing on second parent first and then to second parent to preserve the first parent's successor as first parent of the merge changeset. Conflicts can occcur and we can loose processing information, therefore we store a variable in statefile `orphanmerge` which represents whether we are processing a merge changeset with both parents obsoleted. Thanks to Pierre-Yves David for suggesting this way and helping to understand the correctness of this. More rigourous test cases for this will be added in next patch.
author Pulkit Goyal <7895pulkit@gmail.com>
date Sun, 18 Mar 2018 17:29:32 +0530
parents e6bea259c227
children 98941c28f3e2 62b60fc1983d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
1 ============================================
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
2 Testing obsolescence markers push: Cases C.3
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
3 ============================================
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
4
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
5 Mercurial pushes obsolescences markers relevant to the "pushed-set", the set of
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
6 all changesets that requested to be "in sync" after the push (even if they are
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
7 already on both side).
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
8
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
9 This test belongs to a series of tests checking such set is properly computed
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
10 and applied. This does not tests "obsmarkers" discovery capabilities.
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
11
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
12 Category C: advanced case
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
13 TestCase 3: Pruned changeset on precursors of another pruned one
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
14 Variants:
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
15 # a: explicite push
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
16 # b: bare push
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
17
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
18 C.3 Pruned changeset on precursors of another pruned one
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
19 ========================================================
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
20
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
21 .. {{{
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
22 .. B ⊗
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
23 .. |
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
24 .. A ø⇠⊗ A'
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
25 .. |/
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
26 .. ● O
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
27 .. }}}
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
28 ..
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
29 .. Marker exist from:
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
30 ..
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
31 .. * A' succeed to A
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
32 .. * A' (prune
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
33 .. * B (prune)
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
34 ..
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
35 .. Command run:
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
36 ..
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
37 .. * hg push -r A'
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
38 .. * hg push
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
39 ..
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
40 .. Expected exchange:
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
41 ..
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
42 .. * `A ø⇠⊗ A'`
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
43 .. * A (prune)
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
44 .. * B (prune)
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
45
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
46 Setup
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
47 -----
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
48
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
49 $ . $TESTDIR/testlib/exchange-obsmarker-util.sh
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
50
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
51 Initial
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
52
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
53 $ setuprepos C.3
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
54 creating test repo for test case C.3
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
55 - pulldest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
56 - main
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
57 - pushdest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
58 cd into `main` and proceed with env setup
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
59 $ cd main
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
60 $ mkcommit A0
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
61 $ mkcommit B
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
62 $ hg prune -qd '0 0' .
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
63 $ hg update -q 0
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
64 $ mkcommit A1
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
65 created new head
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
66 $ hg debugobsolete `getid 'desc(A0)'` `getid 'desc(A1)'`
2754
21f06d932231 test: update test output to match b11e8c67fb0f
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2580
diff changeset
67 obsoleted 1 changesets
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
68 $ hg prune -qd '0 0' .
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
69 $ hg log -G --hidden
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
70 x e5ea8f9c7314 (draft): A1
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
71 |
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
72 | x 06055a7959d4 (draft): B
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
73 | |
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
74 | x 28b51eb45704 (draft): A0
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
75 |/
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
76 @ a9bdc8b26820 (public): O
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
77
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
78 $ inspect_obsmarkers
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
79 obsstore content
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
80 ================
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
81 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
82 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
83 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
84 obshashtree
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
85 ===========
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
86 a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04 bb74e5d126457aac3b564438c6b80c73ea731bb6
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
87 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 86646b95e6af02c23f25660e942e19707895d905
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
88 06055a7959d4128e6e3bccfd01482e83a2db8a3a 5efda54c4faef1d288712649d367de614c1eb0dd
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
89 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 5ea68792a2a190fe219867808e05ef1bb23d0311
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
90 obshashrange
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
91 ============
2228
3b18440cca74 debugstablerange: improve output spacing
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2118
diff changeset
92 rev node index size depth obshash
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
93 0 a9bdc8b26820 0 1 1 bb74e5d12645
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
94 $ cd ..
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
95 $ cd ..
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
96
2268
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
97 $ cp -R C.3 C.3.a
f2ebe960998b tests: update test to match upstreamable version
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2230
diff changeset
98 $ cp -R C.3 C.3.b
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
99
984
b286f77d680c tests: fix grammar, spelling, punctuation in comments
Greg Ward <greg@gerg.ca>
parents: 957
diff changeset
100 Actual Test (explicit push)
b286f77d680c tests: fix grammar, spelling, punctuation in comments
Greg Ward <greg@gerg.ca>
parents: 957
diff changeset
101 ---------------------------
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
102
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
103 $ dotest C.3.a O
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
104 ## Running testcase C.3.a
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
105 # testing echange of "O" (a9bdc8b26820)
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
106 ## initial state
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
107 # obstore: main
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
108 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
109 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
110 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
111 # obstore: pushdest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
112 # obstore: pulldest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
113 ## pushing "O" from main to pushdest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
114 pushing to pushdest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
115 searching for changes
1078
5717d023da63 obsexc: use the common discovery
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1067
diff changeset
116 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
117 remote: 3 new obsolescence markers
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
118 ## post push state
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
119 # obstore: main
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
120 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
121 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
122 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
123 # obstore: pushdest
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
124 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
125 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
126 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
127 # obstore: pulldest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
128 ## pulling "a9bdc8b26820" from main into pulldest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
129 pulling from main
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
130 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
131 3 new obsolescence markers
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
132 ## post pull state
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
133 # obstore: main
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
134 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
135 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
136 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
137 # obstore: pushdest
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
138 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
139 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
140 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
141 # obstore: pulldest
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
142 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
143 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
144 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
145
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
146 Actual Test (bare push)
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
147 -------------------------------------
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
148
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
149 $ dotest C.3.b
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
150 ## Running testcase C.3.b
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
151 ## initial state
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
152 # obstore: main
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
153 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
154 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
155 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
156 # obstore: pushdest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
157 # obstore: pulldest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
158 ## pushing from main to pushdest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
159 pushing to pushdest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
160 searching for changes
1078
5717d023da63 obsexc: use the common discovery
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1067
diff changeset
161 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
162 remote: 3 new obsolescence markers
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
163 ## post push state
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
164 # obstore: main
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
165 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
166 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
167 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
168 # obstore: pushdest
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
169 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
170 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
171 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
172 # obstore: pulldest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
173 ## pulling from main into pulldest
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
174 pulling from main
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
175 searching for changes
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
176 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
177 3 new obsolescence markers
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
178 ## post pull state
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
179 # obstore: main
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
180 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
181 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
182 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
183 # obstore: pushdest
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
184 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
185 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
186 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
846
35972ef12664 exchange: add test case for C.3
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
187 # obstore: pulldest
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
188 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 2754
diff changeset
189 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
3566
e6bea259c227 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
190 e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}