##// END OF EJS Templates
test: enable sparse-revlog for test-narrow-clone.t...
Boris Feld -
r40936:56fff6d7 default
parent child Browse files
Show More
@@ -1,291 +1,298 b''
1 TRANSITIONAL CONFIG
2 $ cat << EOF >> $HGRCPATH
3 > [format]
4 > sparse-revlog = yes
5 > EOF
6
1 7 $ . "$TESTDIR/narrow-library.sh"
2 8
3 9 $ hg init master
4 10 $ cd master
5 11 $ cat >> .hg/hgrc <<EOF
6 12 > [narrow]
7 13 > serveellipses=True
8 14 > EOF
9 15 $ mkdir dir
10 16 $ mkdir dir/src
11 17 $ cd dir/src
12 18 $ for x in `$TESTDIR/seq.py 20`; do echo $x > "f$x"; hg add "f$x"; hg commit -m "Commit src $x"; done
13 19 $ cd ..
14 20 $ mkdir tests
15 21 $ cd tests
16 22 $ for x in `$TESTDIR/seq.py 20`; do echo $x > "t$x"; hg add "t$x"; hg commit -m "Commit test $x"; done
17 23 $ cd ../../..
18 24
19 25 Only path: and rootfilesin: pattern prefixes are allowed
20 26
21 27 $ hg clone --narrow ssh://user@dummy/master badnarrow --noupdate --include 'glob:**'
22 28 abort: invalid prefix on narrow pattern: glob:**
23 29 (narrow patterns must begin with one of the following: path:, rootfilesin:)
24 30 [255]
25 31
26 32 $ hg clone --narrow ssh://user@dummy/master badnarrow --noupdate --exclude 'set:ignored'
27 33 abort: invalid prefix on narrow pattern: set:ignored
28 34 (narrow patterns must begin with one of the following: path:, rootfilesin:)
29 35 [255]
30 36
31 37 narrow clone a file, f10
32 38
33 39 $ hg clone --narrow ssh://user@dummy/master narrow --noupdate --include "dir/src/f10"
34 40 requesting all changes
35 41 adding changesets
36 42 adding manifests
37 43 adding file changes
38 44 added 3 changesets with 1 changes to 1 files
39 45 new changesets *:* (glob)
40 46 $ cd narrow
41 47 $ cat .hg/requires | grep -v generaldelta
42 48 dotencode
43 49 fncache
44 50 narrowhg-experimental
45 51 revlogv1
52 sparserevlog
46 53 store
47 54 testonly-simplestore (reposimplestore !)
48 55
49 56 $ hg tracked
50 57 I path:dir/src/f10
51 58 $ hg tracked
52 59 I path:dir/src/f10
53 60 $ hg update
54 61 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
55 62 $ find * | sort
56 63 dir
57 64 dir/src
58 65 dir/src/f10
59 66 $ cat dir/src/f10
60 67 10
61 68
62 69 $ cd ..
63 70
64 71 BUG: local-to-local narrow clones should work, but don't.
65 72
66 73 $ hg clone --narrow master narrow-via-localpeer --noupdate --include "dir/src/f10"
67 74 requesting all changes
68 75 abort: server does not support narrow clones
69 76 [255]
70 77 $ hg tracked -R narrow-via-localpeer
71 78 abort: repository narrow-via-localpeer not found!
72 79 [255]
73 80 $ rm -Rf narrow-via-localpeer
74 81
75 82 narrow clone with a newline should fail
76 83
77 84 $ hg clone --narrow ssh://user@dummy/master narrow_fail --noupdate --include 'dir/src/f10
78 85 > '
79 86 abort: newlines are not allowed in narrowspec paths
80 87 [255]
81 88
82 89 narrow clone a directory, tests/, except tests/t19
83 90
84 91 $ hg clone --narrow ssh://user@dummy/master narrowdir --noupdate --include "dir/tests/" --exclude "dir/tests/t19"
85 92 requesting all changes
86 93 adding changesets
87 94 adding manifests
88 95 adding file changes
89 96 added 21 changesets with 19 changes to 19 files
90 97 new changesets *:* (glob)
91 98 $ cd narrowdir
92 99 $ hg tracked
93 100 I path:dir/tests
94 101 X path:dir/tests/t19
95 102 $ hg tracked
96 103 I path:dir/tests
97 104 X path:dir/tests/t19
98 105 $ hg update
99 106 19 files updated, 0 files merged, 0 files removed, 0 files unresolved
100 107 $ find * | sort
101 108 dir
102 109 dir/tests
103 110 dir/tests/t1
104 111 dir/tests/t10
105 112 dir/tests/t11
106 113 dir/tests/t12
107 114 dir/tests/t13
108 115 dir/tests/t14
109 116 dir/tests/t15
110 117 dir/tests/t16
111 118 dir/tests/t17
112 119 dir/tests/t18
113 120 dir/tests/t2
114 121 dir/tests/t20
115 122 dir/tests/t3
116 123 dir/tests/t4
117 124 dir/tests/t5
118 125 dir/tests/t6
119 126 dir/tests/t7
120 127 dir/tests/t8
121 128 dir/tests/t9
122 129
123 130 $ cd ..
124 131
125 132 narrow clone everything but a directory (tests/)
126 133
127 134 $ hg clone --narrow ssh://user@dummy/master narrowroot --noupdate --exclude "dir/tests"
128 135 requesting all changes
129 136 adding changesets
130 137 adding manifests
131 138 adding file changes
132 139 added 21 changesets with 20 changes to 20 files
133 140 new changesets *:* (glob)
134 141 $ cd narrowroot
135 142 $ hg tracked
136 143 I path:.
137 144 X path:dir/tests
138 145 $ hg tracked
139 146 I path:.
140 147 X path:dir/tests
141 148 $ hg update
142 149 20 files updated, 0 files merged, 0 files removed, 0 files unresolved
143 150 $ find * | sort
144 151 dir
145 152 dir/src
146 153 dir/src/f1
147 154 dir/src/f10
148 155 dir/src/f11
149 156 dir/src/f12
150 157 dir/src/f13
151 158 dir/src/f14
152 159 dir/src/f15
153 160 dir/src/f16
154 161 dir/src/f17
155 162 dir/src/f18
156 163 dir/src/f19
157 164 dir/src/f2
158 165 dir/src/f20
159 166 dir/src/f3
160 167 dir/src/f4
161 168 dir/src/f5
162 169 dir/src/f6
163 170 dir/src/f7
164 171 dir/src/f8
165 172 dir/src/f9
166 173
167 174 $ cd ..
168 175
169 176 narrow clone no paths at all
170 177
171 178 $ hg clone --narrow ssh://user@dummy/master narrowempty --noupdate
172 179 requesting all changes
173 180 adding changesets
174 181 adding manifests
175 182 adding file changes
176 183 added 1 changesets with 0 changes to 0 files
177 184 new changesets * (glob)
178 185 $ cd narrowempty
179 186 $ hg tracked
180 187 $ hg update
181 188 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
182 189 $ ls
183 190
184 191 $ cd ..
185 192
186 193 simple clone
187 194 $ hg clone ssh://user@dummy/master simpleclone
188 195 requesting all changes
189 196 adding changesets
190 197 adding manifests
191 198 adding file changes
192 199 added 40 changesets with 40 changes to 40 files
193 200 new changesets * (glob)
194 201 updating to branch default
195 202 40 files updated, 0 files merged, 0 files removed, 0 files unresolved
196 203 $ cd simpleclone
197 204 $ find * | sort
198 205 dir
199 206 dir/src
200 207 dir/src/f1
201 208 dir/src/f10
202 209 dir/src/f11
203 210 dir/src/f12
204 211 dir/src/f13
205 212 dir/src/f14
206 213 dir/src/f15
207 214 dir/src/f16
208 215 dir/src/f17
209 216 dir/src/f18
210 217 dir/src/f19
211 218 dir/src/f2
212 219 dir/src/f20
213 220 dir/src/f3
214 221 dir/src/f4
215 222 dir/src/f5
216 223 dir/src/f6
217 224 dir/src/f7
218 225 dir/src/f8
219 226 dir/src/f9
220 227 dir/tests
221 228 dir/tests/t1
222 229 dir/tests/t10
223 230 dir/tests/t11
224 231 dir/tests/t12
225 232 dir/tests/t13
226 233 dir/tests/t14
227 234 dir/tests/t15
228 235 dir/tests/t16
229 236 dir/tests/t17
230 237 dir/tests/t18
231 238 dir/tests/t19
232 239 dir/tests/t2
233 240 dir/tests/t20
234 241 dir/tests/t3
235 242 dir/tests/t4
236 243 dir/tests/t5
237 244 dir/tests/t6
238 245 dir/tests/t7
239 246 dir/tests/t8
240 247 dir/tests/t9
241 248
242 249 $ cd ..
243 250
244 251 Testing the --narrowspec flag to clone
245 252
246 253 $ cat >> narrowspecs <<EOF
247 254 > %include foo
248 255 > [include]
249 256 > path:dir/tests/
250 257 > path:dir/src/f12
251 258 > EOF
252 259
253 260 $ hg clone ssh://user@dummy/master specfile --narrowspec narrowspecs
254 261 reading narrowspec from '$TESTTMP/narrowspecs'
255 262 abort: cannot specify other files using '%include' in narrowspec
256 263 [255]
257 264
258 265 $ cat > narrowspecs <<EOF
259 266 > [include]
260 267 > path:dir/tests/
261 268 > path:dir/src/f12
262 269 > EOF
263 270
264 271 $ hg clone ssh://user@dummy/master specfile --narrowspec narrowspecs
265 272 reading narrowspec from '$TESTTMP/narrowspecs'
266 273 requesting all changes
267 274 adding changesets
268 275 adding manifests
269 276 adding file changes
270 277 added 23 changesets with 21 changes to 21 files
271 278 new changesets c13e3773edb4:26ce255d5b5d
272 279 updating to branch default
273 280 21 files updated, 0 files merged, 0 files removed, 0 files unresolved
274 281 $ cd specfile
275 282 $ hg tracked
276 283 I path:dir/src/f12
277 284 I path:dir/tests
278 285 $ cd ..
279 286
280 287 Narrow spec with invalid patterns is rejected
281 288
282 289 $ cat > narrowspecs <<EOF
283 290 > [include]
284 291 > glob:**
285 292 > EOF
286 293
287 294 $ hg clone ssh://user@dummy/master badspecfile --narrowspec narrowspecs
288 295 reading narrowspec from '$TESTTMP/narrowspecs'
289 296 abort: invalid prefix on narrow pattern: glob:**
290 297 (narrow patterns must begin with one of the following: path:, rootfilesin:)
291 298 [255]
General Comments 0
You need to be logged in to leave comments. Login now