Mercurial > hg
annotate tests/test-flagprocessor.t @ 32789:443e8543a125
checkheads: pass "ispushed" function to the obsmarkers logic
We are about to make "allfuturecommon" a set of revs instead of a set of nodes.
The function updated in this patch do not needs to know about these details so
we just pass it a 'ispushed(node)' function. This will simplify the next
changeset.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 05 Jun 2017 15:17:47 +0100 |
parents | ea1c2eb7abd3 |
children | 41081364addb |
rev | line source |
---|---|
30745 | 1 # Create server |
2 $ hg init server | |
3 $ cd server | |
4 $ cat >> .hg/hgrc << EOF | |
5 > [extensions] | |
6 > extension=$TESTDIR/flagprocessorext.py | |
7 > EOF | |
8 $ cd ../ | |
9 | |
10 # Clone server and enable extensions | |
11 $ hg clone -q server client | |
12 $ cd client | |
13 $ cat >> .hg/hgrc << EOF | |
14 > [extensions] | |
15 > extension=$TESTDIR/flagprocessorext.py | |
16 > EOF | |
17 | |
18 # Commit file that will trigger the noop extension | |
19 $ echo '[NOOP]' > noop | |
20 $ hg commit -Aqm "noop" | |
21 | |
22 # Commit file that will trigger the base64 extension | |
23 $ echo '[BASE64]' > base64 | |
24 $ hg commit -Aqm 'base64' | |
25 | |
26 # Commit file that will trigger the gzip extension | |
27 $ echo '[GZIP]' > gzip | |
28 $ hg commit -Aqm 'gzip' | |
29 | |
30 # Commit file that will trigger noop and base64 | |
31 $ echo '[NOOP][BASE64]' > noop-base64 | |
32 $ hg commit -Aqm 'noop+base64' | |
33 | |
34 # Commit file that will trigger noop and gzip | |
35 $ echo '[NOOP][GZIP]' > noop-gzip | |
36 $ hg commit -Aqm 'noop+gzip' | |
37 | |
38 # Commit file that will trigger base64 and gzip | |
39 $ echo '[BASE64][GZIP]' > base64-gzip | |
40 $ hg commit -Aqm 'base64+gzip' | |
41 | |
42 # Commit file that will trigger base64, gzip and noop | |
43 $ echo '[BASE64][GZIP][NOOP]' > base64-gzip-noop | |
44 $ hg commit -Aqm 'base64+gzip+noop' | |
45 | |
46 # TEST: ensure the revision data is consistent | |
47 $ hg cat noop | |
48 [NOOP] | |
49 $ hg debugdata noop 0 | |
50 [NOOP] | |
51 | |
52 $ hg cat -r . base64 | |
53 [BASE64] | |
54 $ hg debugdata base64 0 | |
55 W0JBU0U2NF0K (no-eol) | |
56 | |
57 $ hg cat -r . gzip | |
58 [GZIP] | |
59 $ hg debugdata gzip 0 | |
60 x\x9c\x8bv\x8f\xf2\x0c\x88\xe5\x02\x00\x08\xc8\x01\xfd (no-eol) (esc) | |
61 | |
62 $ hg cat -r . noop-base64 | |
63 [NOOP][BASE64] | |
64 $ hg debugdata noop-base64 0 | |
65 W05PT1BdW0JBU0U2NF0K (no-eol) | |
66 | |
67 $ hg cat -r . noop-gzip | |
68 [NOOP][GZIP] | |
69 $ hg debugdata noop-gzip 0 | |
70 x\x9c\x8b\xf6\xf3\xf7\x0f\x88\x8dv\x8f\xf2\x0c\x88\xe5\x02\x00\x1dH\x03\xf1 (no-eol) (esc) | |
71 | |
72 $ hg cat -r . base64-gzip | |
73 [BASE64][GZIP] | |
74 $ hg debugdata base64-gzip 0 | |
75 eJyLdnIMdjUziY12j/IMiOUCACLBBDo= (no-eol) | |
76 | |
77 $ hg cat -r . base64-gzip-noop | |
78 [BASE64][GZIP][NOOP] | |
79 $ hg debugdata base64-gzip-noop 0 | |
80 eJyLdnIMdjUziY12j/IMiI328/cPiOUCAESjBi4= (no-eol) | |
81 | |
82 # Push to the server | |
83 $ hg push | |
84 pushing to $TESTTMP/server (glob) | |
85 searching for changes | |
86 adding changesets | |
87 adding manifests | |
88 adding file changes | |
89 added 7 changesets with 7 changes to 7 files | |
90 | |
91 # Initialize new client (not cloning) and setup extension | |
92 $ cd .. | |
93 $ hg init client2 | |
94 $ cd client2 | |
95 $ cat >> .hg/hgrc << EOF | |
96 > [paths] | |
97 > default = $TESTTMP/server | |
98 > [extensions] | |
99 > extension=$TESTDIR/flagprocessorext.py | |
100 > EOF | |
101 | |
102 # Pull from server and update to latest revision | |
103 $ hg pull default | |
104 pulling from $TESTTMP/server (glob) | |
105 requesting all changes | |
106 adding changesets | |
107 adding manifests | |
108 adding file changes | |
109 added 7 changesets with 7 changes to 7 files | |
110 (run 'hg update' to get a working copy) | |
111 $ hg update | |
112 7 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
113 | |
114 # TEST: ensure the revision data is consistent | |
115 $ hg cat noop | |
116 [NOOP] | |
117 $ hg debugdata noop 0 | |
118 [NOOP] | |
119 | |
120 $ hg cat -r . base64 | |
121 [BASE64] | |
122 $ hg debugdata base64 0 | |
123 W0JBU0U2NF0K (no-eol) | |
124 | |
125 $ hg cat -r . gzip | |
126 [GZIP] | |
127 $ hg debugdata gzip 0 | |
128 x\x9c\x8bv\x8f\xf2\x0c\x88\xe5\x02\x00\x08\xc8\x01\xfd (no-eol) (esc) | |
129 | |
130 $ hg cat -r . noop-base64 | |
131 [NOOP][BASE64] | |
132 $ hg debugdata noop-base64 0 | |
133 W05PT1BdW0JBU0U2NF0K (no-eol) | |
134 | |
135 $ hg cat -r . noop-gzip | |
136 [NOOP][GZIP] | |
137 $ hg debugdata noop-gzip 0 | |
138 x\x9c\x8b\xf6\xf3\xf7\x0f\x88\x8dv\x8f\xf2\x0c\x88\xe5\x02\x00\x1dH\x03\xf1 (no-eol) (esc) | |
139 | |
140 $ hg cat -r . base64-gzip | |
141 [BASE64][GZIP] | |
142 $ hg debugdata base64-gzip 0 | |
143 eJyLdnIMdjUziY12j/IMiOUCACLBBDo= (no-eol) | |
144 | |
145 $ hg cat -r . base64-gzip-noop | |
146 [BASE64][GZIP][NOOP] | |
147 $ hg debugdata base64-gzip-noop 0 | |
148 eJyLdnIMdjUziY12j/IMiI328/cPiOUCAESjBi4= (no-eol) | |
149 | |
150 # TEST: ensure a missing processor is handled | |
151 $ echo '[FAIL][BASE64][GZIP][NOOP]' > fail-base64-gzip-noop | |
152 $ hg commit -Aqm 'fail+base64+gzip+noop' | |
153 abort: missing processor for flag '0x1'! | |
154 [255] | |
155 | |
156 # TEST: ensure we cannot register several flag processors on the same flag | |
157 $ cat >> .hg/hgrc << EOF | |
158 > [extensions] | |
159 > extension=$TESTDIR/flagprocessorext.py | |
160 > duplicate=$TESTDIR/flagprocessorext.py | |
161 > EOF | |
162 $ echo 'this should fail' > file | |
163 $ hg commit -Aqm 'add file' | |
32724
ea1c2eb7abd3
extensions: catch uisetup and extsetup failures and don't let them break hg
Augie Fackler <augie@google.com>
parents:
31856
diff
changeset
|
164 *** failed to set up extension duplicate: cannot register multiple processors on flag '0x8'. |
ea1c2eb7abd3
extensions: catch uisetup and extsetup failures and don't let them break hg
Augie Fackler <augie@google.com>
parents:
31856
diff
changeset
|
165 abort: missing processor for flag '0x1'! |
30745 | 166 [255] |
31833
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
167 |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
168 $ cd .. |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
169 |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
170 # TEST: bundle repo |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
171 $ hg init bundletest |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
172 $ cd bundletest |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
173 |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
174 $ cat >> .hg/hgrc << EOF |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
175 > [extensions] |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
176 > flagprocessor=$TESTDIR/flagprocessorext.py |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
177 > EOF |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
178 |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
179 $ for i in 0 single two three 4; do |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
180 > echo '[BASE64]a-bit-longer-'$i > base64 |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
181 > hg commit -m base64-$i -A base64 |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
182 > done |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
183 |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
184 $ hg update 2 -q |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
185 $ echo '[BASE64]a-bit-longer-branching' > base64 |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
186 $ hg commit -q -m branching |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
187 |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
188 $ hg bundle --base 1 bundle.hg |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
189 4 changesets found |
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
190 $ hg --config extensions.strip= strip -r 2 --no-backup --force -q |
31838
c39e7c4b535c
test-flagprocessor: remove unnecessary greps
Jun Wu <quark@fb.com>
parents:
31837
diff
changeset
|
191 $ hg -R bundle.hg log --stat -T '{rev} {desc}\n' base64 |
31836
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
192 5 branching |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
193 base64 | 2 +- |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
194 1 files changed, 1 insertions(+), 1 deletions(-) |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
195 |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
196 4 base64-4 |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
197 base64 | 2 +- |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
198 1 files changed, 1 insertions(+), 1 deletions(-) |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
199 |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
200 3 base64-three |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
201 base64 | 2 +- |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
202 1 files changed, 1 insertions(+), 1 deletions(-) |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
203 |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
204 2 base64-two |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
205 base64 | 2 +- |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
206 1 files changed, 1 insertions(+), 1 deletions(-) |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
207 |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
208 1 base64-single |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
209 base64 | 2 +- |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
210 1 files changed, 1 insertions(+), 1 deletions(-) |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
211 |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
212 0 base64-0 |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
213 base64 | 1 + |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
214 1 files changed, 1 insertions(+), 0 deletions(-) |
4598e8f43e20
bundlerepo: fix raw handling in revision()
Jun Wu <quark@fb.com>
parents:
31835
diff
changeset
|
215 |
31833
723c1ab2f77e
test-flagprocessor: add tests about bundlerepo
Jun Wu <quark@fb.com>
parents:
30745
diff
changeset
|
216 |
31838
c39e7c4b535c
test-flagprocessor: remove unnecessary greps
Jun Wu <quark@fb.com>
parents:
31837
diff
changeset
|
217 $ hg bundle -R bundle.hg --base 1 bundle-again.hg -q |
c39e7c4b535c
test-flagprocessor: remove unnecessary greps
Jun Wu <quark@fb.com>
parents:
31837
diff
changeset
|
218 $ hg -R bundle-again.hg log --stat -T '{rev} {desc}\n' base64 |
31837
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
219 5 branching |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
220 base64 | 2 +- |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
221 1 files changed, 1 insertions(+), 1 deletions(-) |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
222 |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
223 4 base64-4 |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
224 base64 | 2 +- |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
225 1 files changed, 1 insertions(+), 1 deletions(-) |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
226 |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
227 3 base64-three |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
228 base64 | 2 +- |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
229 1 files changed, 1 insertions(+), 1 deletions(-) |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
230 |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
231 2 base64-two |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
232 base64 | 2 +- |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
233 1 files changed, 1 insertions(+), 1 deletions(-) |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
234 |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
235 1 base64-single |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
236 base64 | 2 +- |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
237 1 files changed, 1 insertions(+), 1 deletions(-) |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
238 |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
239 0 base64-0 |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
240 base64 | 1 + |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
241 1 files changed, 1 insertions(+), 0 deletions(-) |
37e793918c07
bundlerepo: use raw revision in revdiff()
Jun Wu <quark@fb.com>
parents:
31836
diff
changeset
|
242 |
31855
a418c5837bc0
test-flagprocessor: add a case about hg status
Jun Wu <quark@fb.com>
parents:
31838
diff
changeset
|
243 $ rm bundle.hg bundle-again.hg |
a418c5837bc0
test-flagprocessor: add a case about hg status
Jun Wu <quark@fb.com>
parents:
31838
diff
changeset
|
244 |
a418c5837bc0
test-flagprocessor: add a case about hg status
Jun Wu <quark@fb.com>
parents:
31838
diff
changeset
|
245 # TEST: hg status |
a418c5837bc0
test-flagprocessor: add a case about hg status
Jun Wu <quark@fb.com>
parents:
31838
diff
changeset
|
246 |
a418c5837bc0
test-flagprocessor: add a case about hg status
Jun Wu <quark@fb.com>
parents:
31838
diff
changeset
|
247 $ hg status |
a418c5837bc0
test-flagprocessor: add a case about hg status
Jun Wu <quark@fb.com>
parents:
31838
diff
changeset
|
248 $ hg diff |