tests: don't swallow Git errors upstream of pipes

Some pipes in tests lose the exit code of git processes, which can mask unexpected behavior like crashes. Split these pipes up so that git commands are only at the end of pipes rather than the beginning or middle. The violations fixed in this patch were found in the process of fixing pipe placement in a prior patch. Signed-off-by: Matthew DeVore <matvore@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Matthew DeVore committed Oct 5, 2018 at 14:54 UTC 61de0ff695cf632f1a17fc0ebd4401bde2f7fa8f
3 files changed +141 -132
t/t5317-pack-objects-filter-objects.sh
+80 -76
@@ -20,8 +20,9 @@ test_expect_success 'setup r1' '
20 '
21
22 test_expect_success 'verify blob count in normal packfile' '
23 - git -C r1 ls-files -s file.1 file.2 file.3 file.4 file.5 |
24 - awk -f print_2.awk |
23 + git -C r1 ls-files -s file.1 file.2 file.3 file.4 file.5 \
24 + >ls_files_result &&
25 + awk -f print_2.awk ls_files_result |
26 sort >expected &&
27
28 git -C r1 pack-objects --rev --stdout >all.pack <<-EOF &&
@@ -29,8 +30,8 @@ test_expect_success 'verify blob count in normal packfile' '
30 EOF
31 git -C r1 index-pack ../all.pack &&
32
32 - git -C r1 verify-pack -v ../all.pack |
33 - grep blob |
33 + git -C r1 verify-pack -v ../all.pack >verify_result &&
34 + grep blob verify_result |
35 awk -f print_1.awk |
36 sort >observed &&
37
@@ -43,8 +44,8 @@ test_expect_success 'verify blob:none packfile has no blobs' '
44 EOF
45 git -C r1 index-pack ../filter.pack &&
46
46 - git -C r1 verify-pack -v ../filter.pack |
47 - grep blob |
47 + git -C r1 verify-pack -v ../filter.pack >verify_result &&
48 + grep blob verify_result |
49 awk -f print_1.awk |
50 sort >observed &&
51
@@ -53,13 +54,13 @@ test_expect_success 'verify blob:none packfile has no blobs' '
54 '
55
56 test_expect_success 'verify normal and blob:none packfiles have same commits/trees' '
56 - git -C r1 verify-pack -v ../all.pack |
57 - grep -E "commit|tree" |
57 + git -C r1 verify-pack -v ../all.pack >verify_result &&
58 + grep -E "commit|tree" verify_result |
59 awk -f print_1.awk |
60 sort >expected &&
61
61 - git -C r1 verify-pack -v ../filter.pack |
62 - grep -E "commit|tree" |
62 + git -C r1 verify-pack -v ../filter.pack >verify_result &&
63 + grep -E "commit|tree" verify_result |
64 awk -f print_1.awk |
65 sort >observed &&
66
@@ -82,8 +83,8 @@ test_expect_success 'setup r2' '
83 '
84
85 test_expect_success 'verify blob count in normal packfile' '
85 - git -C r2 ls-files -s large.1000 large.10000 |
86 - awk -f print_2.awk |
86 + git -C r2 ls-files -s large.1000 large.10000 >ls_files_result &&
87 + awk -f print_2.awk ls_files_result |
88 sort >expected &&
89
90 git -C r2 pack-objects --rev --stdout >all.pack <<-EOF &&
@@ -91,8 +92,8 @@ test_expect_success 'verify blob count in normal packfile' '
92 EOF
93 git -C r2 index-pack ../all.pack &&
94
94 - git -C r2 verify-pack -v ../all.pack |
95 - grep blob |
95 + git -C r2 verify-pack -v ../all.pack >verify_result &&
96 + grep blob verify_result |
97 awk -f print_1.awk |
98 sort >observed &&
99
@@ -105,8 +106,8 @@ test_expect_success 'verify blob:limit=500 omits all blobs' '
106 EOF
107 git -C r2 index-pack ../filter.pack &&
108
108 - git -C r2 verify-pack -v ../filter.pack |
109 - grep blob |
109 + git -C r2 verify-pack -v ../filter.pack >verify_result &&
110 + grep blob verify_result |
111 awk -f print_1.awk |
112 sort >observed &&
113
@@ -120,8 +121,8 @@ test_expect_success 'verify blob:limit=1000' '
121 EOF
122 git -C r2 index-pack ../filter.pack &&
123
123 - git -C r2 verify-pack -v ../filter.pack |
124 - grep blob |
124 + git -C r2 verify-pack -v ../filter.pack >verify_result &&
125 + grep blob verify_result |
126 awk -f print_1.awk |
127 sort >observed &&
128
@@ -130,8 +131,8 @@ test_expect_success 'verify blob:limit=1000' '
131 '
132
133 test_expect_success 'verify blob:limit=1001' '
133 - git -C r2 ls-files -s large.1000 |
134 - awk -f print_2.awk |
134 + git -C r2 ls-files -s large.1000 >ls_files_result &&
135 + awk -f print_2.awk ls_files_result |
136 sort >expected &&
137
138 git -C r2 pack-objects --rev --stdout --filter=blob:limit=1001 >filter.pack <<-EOF &&
@@ -139,8 +140,8 @@ test_expect_success 'verify blob:limit=1001' '
140 EOF
141 git -C r2 index-pack ../filter.pack &&
142
142 - git -C r2 verify-pack -v ../filter.pack |
143 - grep blob |
143 + git -C r2 verify-pack -v ../filter.pack >verify_result &&
144 + grep blob verify_result |
145 awk -f print_1.awk |
146 sort >observed &&
147
@@ -148,8 +149,8 @@ test_expect_success 'verify blob:limit=1001' '
149 '
150
151 test_expect_success 'verify blob:limit=10001' '
151 - git -C r2 ls-files -s large.1000 large.10000 |
152 - awk -f print_2.awk |
152 + git -C r2 ls-files -s large.1000 large.10000 >ls_files_result &&
153 + awk -f print_2.awk ls_files_result |
154 sort >expected &&
155
156 git -C r2 pack-objects --rev --stdout --filter=blob:limit=10001 >filter.pack <<-EOF &&
@@ -157,8 +158,8 @@ test_expect_success 'verify blob:limit=10001' '
158 EOF
159 git -C r2 index-pack ../filter.pack &&
160
160 - git -C r2 verify-pack -v ../filter.pack |
161 - grep blob |
161 + git -C r2 verify-pack -v ../filter.pack >verify_result &&
162 + grep blob verify_result |
163 awk -f print_1.awk |
164 sort >observed &&
165
@@ -166,8 +167,8 @@ test_expect_success 'verify blob:limit=10001' '
167 '
168
169 test_expect_success 'verify blob:limit=1k' '
169 - git -C r2 ls-files -s large.1000 |
170 - awk -f print_2.awk |
170 + git -C r2 ls-files -s large.1000 >ls_files_result &&
171 + awk -f print_2.awk ls_files_result |
172 sort >expected &&
173
174 git -C r2 pack-objects --rev --stdout --filter=blob:limit=1k >filter.pack <<-EOF &&
@@ -175,8 +176,8 @@ test_expect_success 'verify blob:limit=1k' '
176 EOF
177 git -C r2 index-pack ../filter.pack &&
178
178 - git -C r2 verify-pack -v ../filter.pack |
179 - grep blob |
179 + git -C r2 verify-pack -v ../filter.pack >verify_result &&
180 + grep blob verify_result |
181 awk -f print_1.awk |
182 sort >observed &&
183
@@ -184,8 +185,8 @@ test_expect_success 'verify blob:limit=1k' '
185 '
186
187 test_expect_success 'verify explicitly specifying oversized blob in input' '
187 - git -C r2 ls-files -s large.1000 large.10000 |
188 - awk -f print_2.awk |
188 + git -C r2 ls-files -s large.1000 large.10000 >ls_files_result &&
189 + awk -f print_2.awk ls_files_result |
190 sort >expected &&
191
192 git -C r2 pack-objects --rev --stdout --filter=blob:limit=1k >filter.pack <<-EOF &&
@@ -194,8 +195,8 @@ test_expect_success 'verify explicitly specifying oversized blob in input' '
195 EOF
196 git -C r2 index-pack ../filter.pack &&
197
197 - git -C r2 verify-pack -v ../filter.pack |
198 - grep blob |
198 + git -C r2 verify-pack -v ../filter.pack >verify_result &&
199 + grep blob verify_result |
200 awk -f print_1.awk |
201 sort >observed &&
202
@@ -203,8 +204,8 @@ test_expect_success 'verify explicitly specifying oversized blob in input' '
204 '
205
206 test_expect_success 'verify blob:limit=1m' '
206 - git -C r2 ls-files -s large.1000 large.10000 |
207 - awk -f print_2.awk |
207 + git -C r2 ls-files -s large.1000 large.10000 >ls_files_result &&
208 + awk -f print_2.awk ls_files_result |
209 sort >expected &&
210
211 git -C r2 pack-objects --rev --stdout --filter=blob:limit=1m >filter.pack <<-EOF &&
@@ -212,8 +213,8 @@ test_expect_success 'verify blob:limit=1m' '
213 EOF
214 git -C r2 index-pack ../filter.pack &&
215
215 - git -C r2 verify-pack -v ../filter.pack |
216 - grep blob |
216 + git -C r2 verify-pack -v ../filter.pack >verify_result &&
217 + grep blob verify_result |
218 awk -f print_1.awk |
219 sort >observed &&
220
@@ -221,13 +222,13 @@ test_expect_success 'verify blob:limit=1m' '
222 '
223
224 test_expect_success 'verify normal and blob:limit packfiles have same commits/trees' '
224 - git -C r2 verify-pack -v ../all.pack |
225 - grep -E "commit|tree" |
225 + git -C r2 verify-pack -v ../all.pack >verify_result &&
226 + grep -E "commit|tree" verify_result |
227 awk -f print_1.awk |
228 sort >expected &&
229
229 - git -C r2 verify-pack -v ../filter.pack |
230 - grep -E "commit|tree" |
230 + git -C r2 verify-pack -v ../filter.pack >verify_result &&
231 + grep -E "commit|tree" verify_result |
232 awk -f print_1.awk |
233 sort >observed &&
234
@@ -255,8 +256,9 @@ test_expect_success 'setup r3' '
256 '
257
258 test_expect_success 'verify blob count in normal packfile' '
258 - git -C r3 ls-files -s sparse1 sparse2 dir1/sparse1 dir1/sparse2 |
259 - awk -f print_2.awk |
259 + git -C r3 ls-files -s sparse1 sparse2 dir1/sparse1 dir1/sparse2 \
260 + >ls_files_result &&
261 + awk -f print_2.awk ls_files_result |
262 sort >expected &&
263
264 git -C r3 pack-objects --rev --stdout >all.pack <<-EOF &&
@@ -264,8 +266,8 @@ test_expect_success 'verify blob count in normal packfile' '
266 EOF
267 git -C r3 index-pack ../all.pack &&
268
267 - git -C r3 verify-pack -v ../all.pack |
268 - grep blob |
269 + git -C r3 verify-pack -v ../all.pack >verify_result &&
270 + grep blob verify_result |
271 awk -f print_1.awk |
272 sort >observed &&
273
@@ -273,8 +275,8 @@ test_expect_success 'verify blob count in normal packfile' '
275 '
276
277 test_expect_success 'verify sparse:path=pattern1' '
276 - git -C r3 ls-files -s dir1/sparse1 dir1/sparse2 |
277 - awk -f print_2.awk |
278 + git -C r3 ls-files -s dir1/sparse1 dir1/sparse2 >ls_files_result &&
279 + awk -f print_2.awk ls_files_result |
280 sort >expected &&
281
282 git -C r3 pack-objects --rev --stdout --filter=sparse:path=../pattern1 >filter.pack <<-EOF &&
@@ -282,8 +284,8 @@ test_expect_success 'verify sparse:path=pattern1' '
284 EOF
285 git -C r3 index-pack ../filter.pack &&
286
285 - git -C r3 verify-pack -v ../filter.pack |
286 - grep blob |
287 + git -C r3 verify-pack -v ../filter.pack >verify_result &&
288 + grep blob verify_result |
289 awk -f print_1.awk |
290 sort >observed &&
291
@@ -291,13 +293,13 @@ test_expect_success 'verify sparse:path=pattern1' '
293 '
294
295 test_expect_success 'verify normal and sparse:path=pattern1 packfiles have same commits/trees' '
294 - git -C r3 verify-pack -v ../all.pack |
295 - grep -E "commit|tree" |
296 + git -C r3 verify-pack -v ../all.pack >verify_result &&
297 + grep -E "commit|tree" verify_result |
298 awk -f print_1.awk |
299 sort >expected &&
300
299 - git -C r3 verify-pack -v ../filter.pack |
300 - grep -E "commit|tree" |
301 + git -C r3 verify-pack -v ../filter.pack >verify_result &&
302 + grep -E "commit|tree" verify_result |
303 awk -f print_1.awk |
304 sort >observed &&
305
@@ -305,8 +307,8 @@ test_expect_success 'verify normal and sparse:path=pattern1 packfiles have same
307 '
308
309 test_expect_success 'verify sparse:path=pattern2' '
308 - git -C r3 ls-files -s sparse1 dir1/sparse1 |
309 - awk -f print_2.awk |
310 + git -C r3 ls-files -s sparse1 dir1/sparse1 >ls_files_result &&
311 + awk -f print_2.awk ls_files_result |
312 sort >expected &&
313
314 git -C r3 pack-objects --rev --stdout --filter=sparse:path=../pattern2 >filter.pack <<-EOF &&
@@ -314,8 +316,8 @@ test_expect_success 'verify sparse:path=pattern2' '
316 EOF
317 git -C r3 index-pack ../filter.pack &&
318
317 - git -C r3 verify-pack -v ../filter.pack |
318 - grep blob |
319 + git -C r3 verify-pack -v ../filter.pack >verify_result &&
320 + grep blob verify_result |
321 awk -f print_1.awk |
322 sort >observed &&
323
@@ -323,13 +325,13 @@ test_expect_success 'verify sparse:path=pattern2' '
325 '
326
327 test_expect_success 'verify normal and sparse:path=pattern2 packfiles have same commits/trees' '
326 - git -C r3 verify-pack -v ../all.pack |
327 - grep -E "commit|tree" |
328 + git -C r3 verify-pack -v ../all.pack >verify_result &&
329 + grep -E "commit|tree" verify_result |
330 awk -f print_1.awk |
331 sort >expected &&
332
331 - git -C r3 verify-pack -v ../filter.pack |
332 - grep -E "commit|tree" |
333 + git -C r3 verify-pack -v ../filter.pack >verify_result &&
334 + grep -E "commit|tree" verify_result |
335 awk -f print_1.awk |
336 sort >observed &&
337
@@ -356,8 +358,9 @@ test_expect_success 'setup r4' '
358 '
359
360 test_expect_success 'verify blob count in normal packfile' '
359 - git -C r4 ls-files -s pattern sparse1 sparse2 dir1/sparse1 dir1/sparse2 |
360 - awk -f print_2.awk |
361 + git -C r4 ls-files -s pattern sparse1 sparse2 dir1/sparse1 dir1/sparse2 \
362 + >ls_files_result &&
363 + awk -f print_2.awk ls_files_result |
364 sort >expected &&
365
366 git -C r4 pack-objects --rev --stdout >all.pack <<-EOF &&
@@ -365,8 +368,8 @@ test_expect_success 'verify blob count in normal packfile' '
368 EOF
369 git -C r4 index-pack ../all.pack &&
370
368 - git -C r4 verify-pack -v ../all.pack |
369 - grep blob |
371 + git -C r4 verify-pack -v ../all.pack >verify_result &&
372 + grep blob verify_result |
373 awk -f print_1.awk |
374 sort >observed &&
375
@@ -374,8 +377,8 @@ test_expect_success 'verify blob count in normal packfile' '
377 '
378
379 test_expect_success 'verify sparse:oid=OID' '
377 - git -C r4 ls-files -s dir1/sparse1 dir1/sparse2 |
378 - awk -f print_2.awk |
380 + git -C r4 ls-files -s dir1/sparse1 dir1/sparse2 >ls_files_result &&
381 + awk -f print_2.awk ls_files_result |
382 sort >expected &&
383
384 oid=$(git -C r4 ls-files -s pattern | awk -f print_2.awk) &&
@@ -384,8 +387,8 @@ test_expect_success 'verify sparse:oid=OID' '
387 EOF
388 git -C r4 index-pack ../filter.pack &&
389
387 - git -C r4 verify-pack -v ../filter.pack |
388 - grep blob |
390 + git -C r4 verify-pack -v ../filter.pack >verify_result &&
391 + grep blob verify_result |
392 awk -f print_1.awk |
393 sort >observed &&
394
@@ -393,8 +396,8 @@ test_expect_success 'verify sparse:oid=OID' '
396 '
397
398 test_expect_success 'verify sparse:oid=oid-ish' '
396 - git -C r4 ls-files -s dir1/sparse1 dir1/sparse2 |
397 - awk -f print_2.awk |
399 + git -C r4 ls-files -s dir1/sparse1 dir1/sparse2 >ls_files_result &&
400 + awk -f print_2.awk ls_files_result |
401 sort >expected &&
402
403 git -C r4 pack-objects --rev --stdout --filter=sparse:oid=master:pattern >filter.pack <<-EOF &&
@@ -402,8 +405,8 @@ test_expect_success 'verify sparse:oid=oid-ish' '
405 EOF
406 git -C r4 index-pack ../filter.pack &&
407
405 - git -C r4 verify-pack -v ../filter.pack |
406 - grep blob |
408 + git -C r4 verify-pack -v ../filter.pack >verify_result &&
409 + grep blob verify_result |
410 awk -f print_1.awk |
411 sort >observed &&
412
@@ -414,8 +417,9 @@ test_expect_success 'verify sparse:oid=oid-ish' '
417 # This models previously omitted objects that we did not receive.
418
419 test_expect_success 'setup r1 - delete loose blobs' '
417 - git -C r1 ls-files -s file.1 file.2 file.3 file.4 file.5 |
418 - awk -f print_2.awk |
420 + git -C r1 ls-files -s file.1 file.2 file.3 file.4 file.5 \
421 + >ls_files_result &&
422 + awk -f print_2.awk ls_files_result |
423 sort >expected &&
424
425 for id in `cat expected | sed "s|..|&/|"`
t/t5616-partial-clone.sh
+8 -6
@@ -35,8 +35,8 @@ test_expect_success 'setup bare clone for server' '
35 test_expect_success 'do partial clone 1' '
36 git clone --no-checkout --filter=blob:none "file://$(pwd)/srv.bare" pc1 &&
37
38 - git -C pc1 rev-list HEAD --quiet --objects --missing=print |
39 - awk -f print_1.awk |
38 + git -C pc1 rev-list HEAD --quiet --objects --missing=print >revs &&
39 + awk -f print_1.awk revs |
40 sed "s/?//" |
41 sort >observed.oids &&
42
@@ -133,16 +133,18 @@ test_expect_success 'push new commits to server for file.3.txt' '
133 test_expect_success 'manual prefetch of missing objects' '
134 git -C pc1 fetch --filter=blob:none origin &&
135
136 - git -C pc1 rev-list master..origin/master --quiet --objects --missing=print |
137 - awk -f print_1.awk |
136 + git -C pc1 rev-list master..origin/master --quiet --objects --missing=print \
137 + >revs &&
138 + awk -f print_1.awk revs |
139 sed "s/?//" |
140 sort >observed.oids &&
141
142 test_line_count = 6 observed.oids &&
143 git -C pc1 fetch-pack --stdin "file://$(pwd)/srv.bare" <observed.oids &&
144
144 - git -C pc1 rev-list master..origin/master --quiet --objects --missing=print |
145 - awk -f print_1.awk |
145 + git -C pc1 rev-list master..origin/master --quiet --objects --missing=print \
146 + >revs &&
147 + awk -f print_1.awk revs |
148 sed "s/?//" |
149 sort >observed.oids &&
150
t/t6112-rev-list-filters-objects.sh
+53 -50
@@ -20,12 +20,13 @@ test_expect_success 'setup r1' '
20 '
21
22 test_expect_success 'verify blob:none omits all 5 blobs' '
23 - git -C r1 ls-files -s file.1 file.2 file.3 file.4 file.5 |
24 - awk -f print_2.awk |
23 + git -C r1 ls-files -s file.1 file.2 file.3 file.4 file.5 \
24 + >ls_files_result &&
25 + awk -f print_2.awk ls_files_result |
26 sort >expected &&
27
27 - git -C r1 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:none |
28 - awk -f print_1.awk |
28 + git -C r1 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:none >revs &&
29 + awk -f print_1.awk revs |
30 sed "s/~//" |
31 sort >observed &&
32
@@ -33,12 +34,13 @@ test_expect_success 'verify blob:none omits all 5 blobs' '
34 '
35
36 test_expect_success 'verify emitted+omitted == all' '
36 - git -C r1 rev-list HEAD --objects |
37 - awk -f print_1.awk |
37 + git -C r1 rev-list HEAD --objects >revs &&
38 + awk -f print_1.awk revs |
39 sort >expected &&
40
40 - git -C r1 rev-list HEAD --objects --filter-print-omitted --filter=blob:none |
41 - awk -f print_1.awk |
41 + git -C r1 rev-list HEAD --objects --filter-print-omitted --filter=blob:none \
42 + >revs &&
43 + awk -f print_1.awk revs |
44 sed "s/~//" |
45 sort >observed &&
46
@@ -62,12 +64,12 @@ test_expect_success 'setup r2' '
64 '
65
66 test_expect_success 'verify blob:limit=500 omits all blobs' '
65 - git -C r2 ls-files -s large.1000 large.10000 |
66 - awk -f print_2.awk |
67 + git -C r2 ls-files -s large.1000 large.10000 >ls_files_result &&
68 + awk -f print_2.awk ls_files_result |
69 sort >expected &&
70
69 - git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=500 |
70 - awk -f print_1.awk |
71 + git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=500 >revs &&
72 + awk -f print_1.awk revs |
73 sed "s/~//" |
74 sort >observed &&
75
@@ -75,12 +77,12 @@ test_expect_success 'verify blob:limit=500 omits all blobs' '
77 '
78
79 test_expect_success 'verify emitted+omitted == all' '
78 - git -C r2 rev-list HEAD --objects |
79 - awk -f print_1.awk |
80 + git -C r2 rev-list HEAD --objects >revs &&
81 + awk -f print_1.awk revs |
82 sort >expected &&
83
82 - git -C r2 rev-list HEAD --objects --filter-print-omitted --filter=blob:limit=500 |
83 - awk -f print_1.awk |
84 + git -C r2 rev-list HEAD --objects --filter-print-omitted --filter=blob:limit=500 >revs &&
85 + awk -f print_1.awk revs |
86 sed "s/~//" |
87 sort >observed &&
88
@@ -88,12 +90,12 @@ test_expect_success 'verify emitted+omitted == all' '
90 '
91
92 test_expect_success 'verify blob:limit=1000' '
91 - git -C r2 ls-files -s large.1000 large.10000 |
92 - awk -f print_2.awk |
93 + git -C r2 ls-files -s large.1000 large.10000 >ls_files_result &&
94 + awk -f print_2.awk ls_files_result |
95 sort >expected &&
96
95 - git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=1000 |
96 - awk -f print_1.awk |
97 + git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=1000 >revs &&
98 + awk -f print_1.awk revs |
99 sed "s/~//" |
100 sort >observed &&
101
@@ -101,12 +103,12 @@ test_expect_success 'verify blob:limit=1000' '
103 '
104
105 test_expect_success 'verify blob:limit=1001' '
104 - git -C r2 ls-files -s large.10000 |
105 - awk -f print_2.awk |
106 + git -C r2 ls-files -s large.10000 >ls_files_result &&
107 + awk -f print_2.awk ls_files_result |
108 sort >expected &&
109
108 - git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=1001 |
109 - awk -f print_1.awk |
110 + git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=1001 >revs &&
111 + awk -f print_1.awk revs |
112 sed "s/~//" |
113 sort >observed &&
114
@@ -114,12 +116,12 @@ test_expect_success 'verify blob:limit=1001' '
116 '
117
118 test_expect_success 'verify blob:limit=1k' '
117 - git -C r2 ls-files -s large.10000 |
118 - awk -f print_2.awk |
119 + git -C r2 ls-files -s large.10000 >ls_files_result &&
120 + awk -f print_2.awk ls_files_result |
121 sort >expected &&
122
121 - git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=1k |
122 - awk -f print_1.awk |
123 + git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=1k >revs &&
124 + awk -f print_1.awk revs |
125 sed "s/~//" |
126 sort >observed &&
127
@@ -127,8 +129,8 @@ test_expect_success 'verify blob:limit=1k' '
129 '
130
131 test_expect_success 'verify blob:limit=1m' '
130 - git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=1m |
131 - awk -f print_1.awk |
132 + git -C r2 rev-list HEAD --quiet --objects --filter-print-omitted --filter=blob:limit=1m >revs &&
133 + awk -f print_1.awk revs |
134 sed "s/~//" |
135 sort >observed &&
136
@@ -156,12 +158,12 @@ test_expect_success 'setup r3' '
158 '
159
160 test_expect_success 'verify sparse:path=pattern1 omits top-level files' '
159 - git -C r3 ls-files -s sparse1 sparse2 |
160 - awk -f print_2.awk |
161 + git -C r3 ls-files -s sparse1 sparse2 >ls_files_result &&
162 + awk -f print_2.awk ls_files_result |
163 sort >expected &&
164
163 - git -C r3 rev-list HEAD --quiet --objects --filter-print-omitted --filter=sparse:path=../pattern1 |
164 - awk -f print_1.awk |
165 + git -C r3 rev-list HEAD --quiet --objects --filter-print-omitted --filter=sparse:path=../pattern1 >revs &&
166 + awk -f print_1.awk revs |
167 sed "s/~//" |
168 sort >observed &&
169
@@ -169,12 +171,12 @@ test_expect_success 'verify sparse:path=pattern1 omits top-level files' '
171 '
172
173 test_expect_success 'verify sparse:path=pattern2 omits both sparse2 files' '
172 - git -C r3 ls-files -s sparse2 dir1/sparse2 |
173 - awk -f print_2.awk |
174 + git -C r3 ls-files -s sparse2 dir1/sparse2 >ls_files_result &&
175 + awk -f print_2.awk ls_files_result |
176 sort >expected &&
177
176 - git -C r3 rev-list HEAD --quiet --objects --filter-print-omitted --filter=sparse:path=../pattern2 |
177 - awk -f print_1.awk |
178 + git -C r3 rev-list HEAD --quiet --objects --filter-print-omitted --filter=sparse:path=../pattern2 >revs &&
179 + awk -f print_1.awk revs |
180 sed "s/~//" |
181 sort >observed &&
182
@@ -192,14 +194,14 @@ test_expect_success 'setup r3 part 2' '
194 '
195
196 test_expect_success 'verify sparse:oid=OID omits top-level files' '
195 - git -C r3 ls-files -s pattern sparse1 sparse2 |
196 - awk -f print_2.awk |
197 + git -C r3 ls-files -s pattern sparse1 sparse2 >ls_files_result &&
198 + awk -f print_2.awk ls_files_result |
199 sort >expected &&
200
201 oid=$(git -C r3 ls-files -s pattern | awk -f print_2.awk) &&
202
201 - git -C r3 rev-list HEAD --quiet --objects --filter-print-omitted --filter=sparse:oid=$oid |
202 - awk -f print_1.awk |
203 + git -C r3 rev-list HEAD --quiet --objects --filter-print-omitted --filter=sparse:oid=$oid >revs &&
204 + awk -f print_1.awk revs |
205 sed "s/~//" |
206 sort >observed &&
207
@@ -207,12 +209,12 @@ test_expect_success 'verify sparse:oid=OID omits top-level files' '
209 '
210
211 test_expect_success 'verify sparse:oid=oid-ish omits top-level files' '
210 - git -C r3 ls-files -s pattern sparse1 sparse2 |
211 - awk -f print_2.awk |
212 + git -C r3 ls-files -s pattern sparse1 sparse2 >ls_files_result &&
213 + awk -f print_2.awk ls_files_result |
214 sort >expected &&
215
214 - git -C r3 rev-list HEAD --quiet --objects --filter-print-omitted --filter=sparse:oid=master:pattern |
215 - awk -f print_1.awk |
216 + git -C r3 rev-list HEAD --quiet --objects --filter-print-omitted --filter=sparse:oid=master:pattern >revs &&
217 + awk -f print_1.awk revs |
218 sed "s/~//" |
219 sort >observed &&
220
@@ -223,8 +225,9 @@ test_expect_success 'verify sparse:oid=oid-ish omits top-level files' '
225 # This models previously omitted objects that we did not receive.
226
227 test_expect_success 'rev-list W/ --missing=print' '
226 - git -C r1 ls-files -s file.1 file.2 file.3 file.4 file.5 |
227 - awk -f print_2.awk |
228 + git -C r1 ls-files -s file.1 file.2 file.3 file.4 file.5 \
229 + >ls_files_result &&
230 + awk -f print_2.awk ls_files_result |
231 sort >expected &&
232
233 for id in `cat expected | sed "s|..|&/|"`
@@ -232,8 +235,8 @@ test_expect_success 'rev-list W/ --missing=print' '
235 rm r1/.git/objects/$id
236 done &&
237
235 - git -C r1 rev-list --quiet HEAD --missing=print --objects |
236 - awk -f print_1.awk |
238 + git -C r1 rev-list --quiet HEAD --missing=print --objects >revs &&
239 + awk -f print_1.awk revs |
240 sed "s/?//" |
241 sort >observed &&
242