@matheusbsbs / matheus-bagliano / commits / f8d186bba7
Fork 0

tests: use test_cmp instead of piping to diff(1)

Change submodule tests that piped to diff(1) to use test_cmp. The resulting unified diff is easier to read. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Ævar Arnfjörð Bjarmason committed Nov 14, 2010 at 14:44 UTC f8d186bba72342fed45ed27e89e1bd1179f31545
2 files changed +94 -47
t/t4041-diff-submodule-option.sh
+64 -32
@@ -37,9 +37,10 @@ head1=$(add_file sm1 foo1 foo2)
37 test_expect_success 'added submodule' "
38 git add sm1 &&
39 git diff-index -p --submodule=log HEAD >actual &&
40 - diff actual - <<-EOF
40 + cat >expected <<-EOF &&
41 Submodule sm1 0000000...$head1 (new submodule)
42 EOF
43 + test_cmp expected actual
44 "
45
46 commit_file sm1 &&
@@ -47,33 +48,36 @@ head2=$(add_file sm1 foo3)
48
49 test_expect_success 'modified submodule(forward)' "
50 git diff-index -p --submodule=log HEAD >actual &&
50 - diff actual - <<-EOF
51 + cat >expected <<-EOF &&
52 Submodule sm1 $head1..$head2:
53 > Add foo3
54 EOF
55 + test_cmp expected actual
56 "
57
58 test_expect_success 'modified submodule(forward)' "
59 git diff --submodule=log >actual &&
58 - diff actual - <<-EOF
60 + cat >expected <<-EOF &&
61 Submodule sm1 $head1..$head2:
62 > Add foo3
63 EOF
64 + test_cmp expected actual
65 "
66
67 test_expect_success 'modified submodule(forward) --submodule' "
68 git diff --submodule >actual &&
66 - diff actual - <<-EOF
69 + cat >expected <<-EOF &&
70 Submodule sm1 $head1..$head2:
71 > Add foo3
72 EOF
73 + test_cmp expected actual
74 "
75
76 fullhead1=$(cd sm1; git rev-list --max-count=1 $head1)
77 fullhead2=$(cd sm1; git rev-list --max-count=1 $head2)
78 test_expect_success 'modified submodule(forward) --submodule=short' "
79 git diff --submodule=short >actual &&
76 - diff actual - <<-EOF
80 + cat >expected <<-EOF &&
81 diff --git a/sm1 b/sm1
82 index $head1..$head2 160000
83 --- a/sm1
@@ -82,6 +86,7 @@ index $head1..$head2 160000
86 -Subproject commit $fullhead1
87 +Subproject commit $fullhead2
88 EOF
89 + test_cmp expected actual
90 "
91
92 commit_file sm1 &&
@@ -93,24 +98,26 @@ head3=$(
98
99 test_expect_success 'modified submodule(backward)' "
100 git diff-index -p --submodule=log HEAD >actual &&
96 - diff actual - <<-EOF
101 + cat >expected <<-EOF &&
102 Submodule sm1 $head2..$head3 (rewind):
103 < Add foo3
104 < Add foo2
105 EOF
106 + test_cmp expected actual
107 "
108
109 head4=$(add_file sm1 foo4 foo5) &&
110 head4_full=$(GIT_DIR=sm1/.git git rev-parse --verify HEAD)
111 test_expect_success 'modified submodule(backward and forward)' "
112 git diff-index -p --submodule=log HEAD >actual &&
107 - diff actual - <<-EOF
113 + cat >expected <<-EOF &&
114 Submodule sm1 $head2...$head4:
115 > Add foo5
116 > Add foo4
117 < Add foo3
118 < Add foo2
119 EOF
120 + test_cmp expected actual
121 "
122
123 commit_file sm1 &&
@@ -123,7 +130,7 @@ mv sm1-bak sm1
130
131 test_expect_success 'typechanged submodule(submodule->blob), --cached' "
132 git diff --submodule=log --cached >actual &&
126 - diff actual - <<-EOF
133 + cat >expected <<-EOF &&
134 Submodule sm1 41fbea9...0000000 (submodule deleted)
135 diff --git a/sm1 b/sm1
136 new file mode 100644
@@ -133,11 +140,12 @@ index 0000000..9da5fb8
140 @@ -0,0 +1 @@
141 +sm1
142 EOF
143 + test_cmp expected actual
144 "
145
146 test_expect_success 'typechanged submodule(submodule->blob)' "
147 git diff --submodule=log >actual &&
140 - diff actual - <<-EOF
148 + cat >expected <<-EOF &&
149 diff --git a/sm1 b/sm1
150 deleted file mode 100644
151 index 9da5fb8..0000000
@@ -147,13 +155,14 @@ index 9da5fb8..0000000
155 -sm1
156 Submodule sm1 0000000...$head4 (new submodule)
157 EOF
158 + test_cmp expected actual
159 "
160
161 rm -rf sm1 &&
162 git checkout-index sm1
163 test_expect_success 'typechanged submodule(submodule->blob)' "
164 git diff-index -p --submodule=log HEAD >actual &&
156 - diff actual - <<-EOF
165 + cat >expected <<-EOF &&
166 Submodule sm1 $head4...0000000 (submodule deleted)
167 diff --git a/sm1 b/sm1
168 new file mode 100644
@@ -163,6 +172,7 @@ index 0000000..$head5
172 @@ -0,0 +1 @@
173 +sm1
174 EOF
175 + test_cmp expected actual
176 "
177
178 rm -f sm1 &&
@@ -171,15 +181,16 @@ head6=$(add_file sm1 foo6 foo7)
181 fullhead6=$(cd sm1; git rev-list --max-count=1 $head6)
182 test_expect_success 'nonexistent commit' "
183 git diff-index -p --submodule=log HEAD >actual &&
174 - diff actual - <<-EOF
184 + cat >expected <<-EOF &&
185 Submodule sm1 $head4...$head6 (commits not present)
186 EOF
187 + test_cmp expected actual
188 "
189
190 commit_file
191 test_expect_success 'typechanged submodule(blob->submodule)' "
192 git diff-index -p --submodule=log HEAD >actual &&
182 - diff actual - <<-EOF
193 + cat >expected <<-EOF &&
194 diff --git a/sm1 b/sm1
195 deleted file mode 100644
196 index $head5..0000000
@@ -189,21 +200,24 @@ index $head5..0000000
200 -sm1
201 Submodule sm1 0000000...$head6 (new submodule)
202 EOF
203 + test_cmp expected actual
204 "
205
206 commit_file sm1 &&
207 test_expect_success 'submodule is up to date' "
208 git diff-index -p --submodule=log HEAD >actual &&
197 - diff actual - <<-EOF
209 + cat >expected <<-EOF &&
210 EOF
211 + test_cmp expected actual
212 "
213
214 test_expect_success 'submodule contains untracked content' "
215 echo new > sm1/new-file &&
216 git diff-index -p --submodule=log HEAD >actual &&
204 - diff actual - <<-EOF
217 + cat >expected <<-EOF &&
218 Submodule sm1 contains untracked content
219 EOF
220 + test_cmp expected actual
221 "
222
223 test_expect_success 'submodule contains untracked content (untracked ignored)' "
@@ -224,18 +238,20 @@ test_expect_success 'submodule contains untracked content (all ignored)' "
238 test_expect_success 'submodule contains untracked and modifed content' "
239 echo new > sm1/foo6 &&
240 git diff-index -p --submodule=log HEAD >actual &&
227 - diff actual - <<-EOF
241 + cat >expected <<-EOF &&
242 Submodule sm1 contains untracked content
243 Submodule sm1 contains modified content
244 EOF
245 + test_cmp expected actual
246 "
247
248 test_expect_success 'submodule contains untracked and modifed content (untracked ignored)' "
249 echo new > sm1/foo6 &&
250 git diff-index -p --ignore-submodules=untracked --submodule=log HEAD >actual &&
236 - diff actual - <<-EOF
251 + cat >expected <<-EOF &&
252 Submodule sm1 contains modified content
253 EOF
254 + test_cmp expected actual
255 "
256
257 test_expect_success 'submodule contains untracked and modifed content (dirty ignored)' "
@@ -253,45 +269,50 @@ test_expect_success 'submodule contains untracked and modifed content (all ignor
269 test_expect_success 'submodule contains modifed content' "
270 rm -f sm1/new-file &&
271 git diff-index -p --submodule=log HEAD >actual &&
256 - diff actual - <<-EOF
272 + cat >expected <<-EOF &&
273 Submodule sm1 contains modified content
274 EOF
275 + test_cmp expected actual
276 "
277
278 (cd sm1; git commit -mchange foo6 >/dev/null) &&
279 head8=$(cd sm1; git rev-parse --verify HEAD | cut -c1-7) &&
280 test_expect_success 'submodule is modified' "
281 git diff-index -p --submodule=log HEAD >actual &&
265 - diff actual - <<-EOF
282 + cat >expected <<-EOF &&
283 Submodule sm1 $head6..$head8:
284 > change
285 EOF
286 + test_cmp expected actual
287 "
288
289 test_expect_success 'modified submodule contains untracked content' "
290 echo new > sm1/new-file &&
291 git diff-index -p --submodule=log HEAD >actual &&
274 - diff actual - <<-EOF
292 + cat >expected <<-EOF &&
293 Submodule sm1 contains untracked content
294 Submodule sm1 $head6..$head8:
295 > change
296 EOF
297 + test_cmp expected actual
298 "
299
300 test_expect_success 'modified submodule contains untracked content (untracked ignored)' "
301 git diff-index -p --ignore-submodules=untracked --submodule=log HEAD >actual &&
283 - diff actual - <<-EOF
302 + cat >expected <<-EOF &&
303 Submodule sm1 $head6..$head8:
304 > change
305 EOF
306 + test_cmp expected actual
307 "
308
309 test_expect_success 'modified submodule contains untracked content (dirty ignored)' "
310 git diff-index -p --ignore-submodules=dirty --submodule=log HEAD >actual &&
291 - diff actual - <<-EOF
311 + cat >expected <<-EOF &&
312 Submodule sm1 $head6..$head8:
313 > change
314 EOF
315 + test_cmp expected actual
316 "
317
318 test_expect_success 'modified submodule contains untracked content (all ignored)' "
@@ -302,31 +323,34 @@ test_expect_success 'modified submodule contains untracked content (all ignored)
323 test_expect_success 'modified submodule contains untracked and modifed content' "
324 echo modification >> sm1/foo6 &&
325 git diff-index -p --submodule=log HEAD >actual &&
305 - diff actual - <<-EOF
326 + cat >expected <<-EOF &&
327 Submodule sm1 contains untracked content
328 Submodule sm1 contains modified content
329 Submodule sm1 $head6..$head8:
330 > change
331 EOF
332 + test_cmp expected actual
333 "
334
335 test_expect_success 'modified submodule contains untracked and modifed content (untracked ignored)' "
336 echo modification >> sm1/foo6 &&
337 git diff-index -p --ignore-submodules=untracked --submodule=log HEAD >actual &&
316 - diff actual - <<-EOF
338 + cat >expected <<-EOF &&
339 Submodule sm1 contains modified content
340 Submodule sm1 $head6..$head8:
341 > change
342 EOF
343 + test_cmp expected actual
344 "
345
346 test_expect_success 'modified submodule contains untracked and modifed content (dirty ignored)' "
347 echo modification >> sm1/foo6 &&
348 git diff-index -p --ignore-submodules=dirty --submodule=log HEAD >actual &&
326 - diff actual - <<-EOF
349 + cat >expected <<-EOF &&
350 Submodule sm1 $head6..$head8:
351 > change
352 EOF
353 + test_cmp expected actual
354 "
355
356 test_expect_success 'modified submodule contains untracked and modifed content (all ignored)' "
@@ -338,19 +362,21 @@ test_expect_success 'modified submodule contains untracked and modifed content (
362 test_expect_success 'modified submodule contains modifed content' "
363 rm -f sm1/new-file &&
364 git diff-index -p --submodule=log HEAD >actual &&
341 - diff actual - <<-EOF
365 + cat >expected <<-EOF &&
366 Submodule sm1 contains modified content
367 Submodule sm1 $head6..$head8:
368 > change
369 EOF
370 + test_cmp expected actual
371 "
372
373 rm -rf sm1
374 test_expect_success 'deleted submodule' "
375 git diff-index -p --submodule=log HEAD >actual &&
351 - diff actual - <<-EOF
376 + cat >expected <<-EOF &&
377 Submodule sm1 $head6...0000000 (submodule deleted)
378 EOF
379 + test_cmp expected actual
380 "
381
382 test_create_repo sm2 &&
@@ -359,41 +385,45 @@ git add sm2
385
386 test_expect_success 'multiple submodules' "
387 git diff-index -p --submodule=log HEAD >actual &&
362 - diff actual - <<-EOF
388 + cat >expected <<-EOF &&
389 Submodule sm1 $head6...0000000 (submodule deleted)
390 Submodule sm2 0000000...$head7 (new submodule)
391 EOF
392 + test_cmp expected actual
393 "
394
395 test_expect_success 'path filter' "
396 git diff-index -p --submodule=log HEAD sm2 >actual &&
370 - diff actual - <<-EOF
397 + cat >expected <<-EOF &&
398 Submodule sm2 0000000...$head7 (new submodule)
399 EOF
400 + test_cmp expected actual
401 "
402
403 commit_file sm2
404 test_expect_success 'given commit' "
405 git diff-index -p --submodule=log HEAD^ >actual &&
378 - diff actual - <<-EOF
406 + cat >expected <<-EOF &&
407 Submodule sm1 $head6...0000000 (submodule deleted)
408 Submodule sm2 0000000...$head7 (new submodule)
409 EOF
410 + test_cmp expected actual
411 "
412
413 test_expect_success 'given commit --submodule' "
414 git diff-index -p --submodule HEAD^ >actual &&
386 - diff actual - <<-EOF
415 + cat >expected <<-EOF &&
416 Submodule sm1 $head6...0000000 (submodule deleted)
417 Submodule sm2 0000000...$head7 (new submodule)
418 EOF
419 + test_cmp expected actual
420 "
421
422 fullhead7=$(cd sm2; git rev-list --max-count=1 $head7)
423
424 test_expect_success 'given commit --submodule=short' "
425 git diff-index -p --submodule=short HEAD^ >actual &&
396 - diff actual - <<-EOF
426 + cat >expected <<-EOF &&
427 diff --git a/sm1 b/sm1
428 deleted file mode 160000
429 index $head6..0000000
@@ -409,6 +439,7 @@ index 0000000..$head7
439 @@ -0,0 +1 @@
440 +Subproject commit $fullhead7
441 EOF
442 + test_cmp expected actual
443 "
444
445 test_expect_success 'setup .git file for sm2' '
@@ -420,10 +451,11 @@ test_expect_success 'setup .git file for sm2' '
451
452 test_expect_success 'diff --submodule with .git file' '
453 git diff --submodule HEAD^ >actual &&
423 - diff actual - <<-EOF
454 + cat >expected <<-EOF &&
455 Submodule sm1 $head6...0000000 (submodule deleted)
456 Submodule sm2 0000000...$head7 (new submodule)
457 EOF
458 + test_cmp expected actual
459 '
460
461 test_done
t/t7401-submodule-summary.sh
+30 -15
@@ -37,11 +37,12 @@ head1=$(add_file sm1 foo1 foo2)
37 test_expect_success 'added submodule' "
38 git add sm1 &&
39 git submodule summary >actual &&
40 - diff actual - <<-EOF
40 + cat >expected <<-EOF &&
41 * sm1 0000000...$head1 (2):
42 > Add foo2
43
44 EOF
45 + test_cmp expected actual
46 "
47
48 commit_file sm1 &&
@@ -49,20 +50,22 @@ head2=$(add_file sm1 foo3)
50
51 test_expect_success 'modified submodule(forward)' "
52 git submodule summary >actual &&
52 - diff actual - <<-EOF
53 + cat >expected <<-EOF &&
54 * sm1 $head1...$head2 (1):
55 > Add foo3
56
57 EOF
58 + test_cmp expected actual
59 "
60
61 test_expect_success 'modified submodule(forward), --files' "
62 git submodule summary --files >actual &&
61 - diff actual - <<-EOF
63 + cat >expected <<-EOF &&
64 * sm1 $head1...$head2 (1):
65 > Add foo3
66
67 EOF
68 + test_cmp expected actual
69 "
70
71 commit_file sm1 &&
@@ -74,19 +77,20 @@ head3=$(
77
78 test_expect_success 'modified submodule(backward)' "
79 git submodule summary >actual &&
77 - diff actual - <<-EOF
80 + cat >expected <<-EOF &&
81 * sm1 $head2...$head3 (2):
82 < Add foo3
83 < Add foo2
84
85 EOF
86 + test_cmp expected actual
87 "
88
89 head4=$(add_file sm1 foo4 foo5) &&
90 head4_full=$(GIT_DIR=sm1/.git git rev-parse --verify HEAD)
91 test_expect_success 'modified submodule(backward and forward)' "
92 git submodule summary >actual &&
89 - diff actual - <<-EOF
93 + cat >expected <<-EOF &&
94 * sm1 $head2...$head4 (4):
95 > Add foo5
96 > Add foo4
@@ -94,17 +98,19 @@ test_expect_success 'modified submodule(backward and forward)' "
98 < Add foo2
99
100 EOF
101 + test_cmp expected actual
102 "
103
104 test_expect_success '--summary-limit' "
105 git submodule summary -n 3 >actual &&
101 - diff actual - <<-EOF
106 + cat >expected <<-EOF &&
107 * sm1 $head2...$head4 (4):
108 > Add foo5
109 > Add foo4
110 < Add foo3
111
112 EOF
113 + test_cmp expected actual
114 "
115
116 commit_file sm1 &&
@@ -117,30 +123,33 @@ mv sm1-bak sm1
123
124 test_expect_success 'typechanged submodule(submodule->blob), --cached' "
125 git submodule summary --cached >actual &&
120 - diff actual - <<-EOF
126 + cat >expected <<-EOF &&
127 * sm1 $head4(submodule)->$head5(blob) (3):
128 < Add foo5
129
130 EOF
131 + test_cmp actual expected
132 "
133
134 test_expect_success 'typechanged submodule(submodule->blob), --files' "
135 git submodule summary --files >actual &&
129 - diff actual - <<-EOF
136 + cat >expected <<-EOF &&
137 * sm1 $head5(blob)->$head4(submodule) (3):
138 > Add foo5
139
140 EOF
141 + test_cmp actual expected
142 "
143
144 rm -rf sm1 &&
145 git checkout-index sm1
146 test_expect_success 'typechanged submodule(submodule->blob)' "
147 git submodule summary >actual &&
140 - diff actual - <<-EOF
148 + cat >expected <<-EOF &&
149 * sm1 $head4(submodule)->$head5(blob):
150
151 EOF
152 + test_cmp actual expected
153 "
154
155 rm -f sm1 &&
@@ -148,31 +157,34 @@ test_create_repo sm1 &&
157 head6=$(add_file sm1 foo6 foo7)
158 test_expect_success 'nonexistent commit' "
159 git submodule summary >actual &&
151 - diff actual - <<-EOF
160 + cat >expected <<-EOF &&
161 * sm1 $head4...$head6:
162 Warn: sm1 doesn't contain commit $head4_full
163
164 EOF
165 + test_cmp actual expected
166 "
167
168 commit_file
169 test_expect_success 'typechanged submodule(blob->submodule)' "
170 git submodule summary >actual &&
161 - diff actual - <<-EOF
171 + cat >expected <<-EOF &&
172 * sm1 $head5(blob)->$head6(submodule) (2):
173 > Add foo7
174
175 EOF
176 + test_cmp expected actual
177 "
178
179 commit_file sm1 &&
180 rm -rf sm1
181 test_expect_success 'deleted submodule' "
182 git submodule summary >actual &&
172 - diff actual - <<-EOF
183 + cat >expected <<-EOF &&
184 * sm1 $head6...0000000:
185
186 EOF
187 + test_cmp expected actual
188 "
189
190 test_create_repo sm2 &&
@@ -181,34 +193,37 @@ git add sm2
193
194 test_expect_success 'multiple submodules' "
195 git submodule summary >actual &&
184 - diff actual - <<-EOF
196 + cat >expected <<-EOF &&
197 * sm1 $head6...0000000:
198
199 * sm2 0000000...$head7 (2):
200 > Add foo9
201
202 EOF
203 + test_cmp expected actual
204 "
205
206 test_expect_success 'path filter' "
207 git submodule summary sm2 >actual &&
195 - diff actual - <<-EOF
208 + cat >expected <<-EOF &&
209 * sm2 0000000...$head7 (2):
210 > Add foo9
211
212 EOF
213 + test_cmp expected actual
214 "
215
216 commit_file sm2
217 test_expect_success 'given commit' "
218 git submodule summary HEAD^ >actual &&
205 - diff actual - <<-EOF
219 + cat >expected <<-EOF &&
220 * sm1 $head6...0000000:
221
222 * sm2 0000000...$head7 (2):
223 > Add foo9
224
225 EOF
226 + test_cmp expected actual
227 "
228
229 test_expect_success '--for-status' "