t7508-status.sh: Add tests for status -s
The new short status has been completely untested so far. Introduce tests by duplicating all tests which are present for the long format. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Michael J Gruber committed
Nov 27, 2009 at 22:29 UTC
14ed05ddd6a8cdd3cb792e2c991207d1640943d1
1 file changed
+166
t/t7508-status.sh
+166
@@ -68,6 +68,24 @@ test_expect_success 'status (2)' '
68
69
'
70
71
+cat > expect << \EOF
72
+ M dir1/modified
73
+A dir2/added
74
+?? dir1/untracked
75
+?? dir2/modified
76
+?? dir2/untracked
77
+?? expect
78
+?? output
79
+?? untracked
80
+EOF
81
+
82
+test_expect_success 'status -s (2)' '
83
+
84
+ git status -s > output &&
85
+ test_cmp expect output
86
+
87
+'
88
+
89
cat >expect <<EOF
90
# On branch master
91
# Changes to be committed:
@@ -97,6 +115,22 @@ test_expect_success 'status (status.showUntrackedFiles no)' '
115
test_cmp expect output
116
'
117
118
+cat >expect << EOF
119
+ M dir1/modified
120
+A dir2/added
121
+EOF
122
+test_expect_success 'status -s -uno' '
123
+ git config --unset status.showuntrackedfiles
124
+ git status -s -uno >output &&
125
+ test_cmp expect output
126
+'
127
+
128
+test_expect_success 'status -s (status.showUntrackedFiles no)' '
129
+ git config status.showuntrackedfiles no
130
+ git status -s >output &&
131
+ test_cmp expect output
132
+'
133
+
134
cat >expect <<EOF
135
# On branch master
136
# Changes to be committed:
@@ -132,6 +166,29 @@ test_expect_success 'status (status.showUntrackedFiles normal)' '
166
test_cmp expect output
167
'
168
169
+cat >expect <<EOF
170
+ M dir1/modified
171
+A dir2/added
172
+?? dir1/untracked
173
+?? dir2/modified
174
+?? dir2/untracked
175
+?? dir3/
176
+?? expect
177
+?? output
178
+?? untracked
179
+EOF
180
+test_expect_success 'status -s -unormal' '
181
+ git config --unset status.showuntrackedfiles
182
+ git status -s -unormal >output &&
183
+ test_cmp expect output
184
+'
185
+
186
+test_expect_success 'status -s (status.showUntrackedFiles normal)' '
187
+ git config status.showuntrackedfiles normal
188
+ git status -s >output &&
189
+ test_cmp expect output
190
+'
191
+
192
cat >expect <<EOF
193
# On branch master
194
# Changes to be committed:
@@ -169,6 +226,29 @@ test_expect_success 'status (status.showUntrackedFiles all)' '
226
test_cmp expect output
227
'
228
229
+cat >expect <<EOF
230
+ M dir1/modified
231
+A dir2/added
232
+?? dir1/untracked
233
+?? dir2/modified
234
+?? dir2/untracked
235
+?? expect
236
+?? output
237
+?? untracked
238
+EOF
239
+test_expect_success 'status -s -uall' '
240
+ git config --unset status.showuntrackedfiles
241
+ git status -s -uall >output &&
242
+ test_cmp expect output
243
+'
244
+test_expect_success 'status -s (status.showUntrackedFiles all)' '
245
+ git config status.showuntrackedfiles all
246
+ git status -s >output &&
247
+ rm -rf dir3 &&
248
+ git config --unset status.showuntrackedfiles &&
249
+ test_cmp expect output
250
+'
251
+
252
cat > expect << \EOF
253
# On branch master
254
# Changes to be committed:
@@ -200,6 +280,23 @@ test_expect_success 'status with relative paths' '
280
281
'
282
283
+cat > expect << \EOF
284
+ M modified
285
+A ../dir2/added
286
+?? untracked
287
+?? ../dir2/modified
288
+?? ../dir2/untracked
289
+?? ../expect
290
+?? ../output
291
+?? ../untracked
292
+EOF
293
+test_expect_success 'status -s with relative paths' '
294
+
295
+ (cd dir1 && git status -s) > output &&
296
+ test_cmp expect output
297
+
298
+'
299
+
300
cat > expect << \EOF
301
# On branch master
302
# Changes to be committed:
@@ -232,6 +329,24 @@ test_expect_success 'status without relative paths' '
329
330
'
331
332
+cat > expect << \EOF
333
+ M dir1/modified
334
+A dir2/added
335
+?? dir1/untracked
336
+?? dir2/modified
337
+?? dir2/untracked
338
+?? expect
339
+?? output
340
+?? untracked
341
+EOF
342
+
343
+test_expect_success 'status -s without relative paths' '
344
+
345
+ (cd dir1 && git status -s) > output &&
346
+ test_cmp expect output
347
+
348
+'
349
+
350
cat <<EOF >expect
351
# On branch master
352
# Changes to be committed:
@@ -298,6 +413,28 @@ test_expect_success 'status --untracked-files=all does not show submodule' '
413
test_cmp expect output
414
'
415
416
+cat >expect <<EOF
417
+ M dir1/modified
418
+A dir2/added
419
+A sm
420
+?? dir1/untracked
421
+?? dir2/modified
422
+?? dir2/untracked
423
+?? expect
424
+?? output
425
+?? untracked
426
+EOF
427
+test_expect_success 'status -s submodule summary is disabled by default' '
428
+ git status -s >output &&
429
+ test_cmp expect output
430
+'
431
+
432
+# we expect the same as the previous test
433
+test_expect_success 'status -s --untracked-files=all does not show submodule' '
434
+ git status -s --untracked-files=all >output &&
435
+ test_cmp expect output
436
+'
437
+
438
head=$(cd sm && git rev-parse --short=7 --verify HEAD)
439
440
cat >expect <<EOF
@@ -335,6 +472,21 @@ test_expect_success 'status submodule summary' '
472
test_cmp expect output
473
'
474
475
+cat >expect <<EOF
476
+ M dir1/modified
477
+A dir2/added
478
+A sm
479
+?? dir1/untracked
480
+?? dir2/modified
481
+?? dir2/untracked
482
+?? expect
483
+?? output
484
+?? untracked
485
+EOF
486
+test_expect_success 'status -s submodule summary' '
487
+ git status -s >output &&
488
+ test_cmp expect output
489
+'
490
491
cat >expect <<EOF
492
# On branch master
@@ -364,6 +516,20 @@ test_expect_success 'status submodule summary (clean submodule)' '
516
test_cmp expect output
517
'
518
519
+cat >expect <<EOF
520
+ M dir1/modified
521
+?? dir1/untracked
522
+?? dir2/modified
523
+?? dir2/untracked
524
+?? expect
525
+?? output
526
+?? untracked
527
+EOF
528
+test_expect_success 'status -s submodule summary (clean submodule)' '
529
+ git status -s >output &&
530
+ test_cmp expect output
531
+'
532
+
533
cat >expect <<EOF
534
# On branch master
535
# Changes to be committed: