Skip to content

Commit c0a8fe8

Browse files
ungpsdscho
authored andcommitted
stash: add tests for git stash show config
This commit introduces tests for `git stash show` config. It tests all the cases where `stash.showStat` and `stash.showPatch` are unset or set to true / false. Signed-off-by: Paul-Sebastian Ungureanu <[email protected]>
1 parent 27c57f2 commit c0a8fe8

File tree

1 file changed

+83
-0
lines changed

1 file changed

+83
-0
lines changed

t/t3907-stash-show-config.sh

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
#!/bin/sh
2+
3+
test_description='Test git stash show configuration.'
4+
5+
. ./test-lib.sh
6+
7+
test_expect_success 'setup' '
8+
test_commit file
9+
'
10+
11+
# takes three parameters:
12+
# 1. the stash.showStat value (or "<unset>")
13+
# 2. the stash.showPatch value (or "<unset>")
14+
# 3. the diff options of the expected output (or nothing for no output)
15+
test_stat_and_patch () {
16+
if test "<unset>" = "$1"
17+
then
18+
test_unconfig stash.showStat
19+
else
20+
test_config stash.showStat "$1"
21+
fi &&
22+
23+
if test "<unset>" = "$2"
24+
then
25+
test_unconfig stash.showPatch
26+
else
27+
test_config stash.showPatch "$2"
28+
fi &&
29+
30+
shift 2 &&
31+
echo 2 >file.t &&
32+
if test $# != 0
33+
then
34+
git diff "$@" >expect
35+
fi &&
36+
git stash &&
37+
git stash show >actual &&
38+
39+
if test $# = 0
40+
then
41+
test_must_be_empty actual
42+
else
43+
test_cmp expect actual
44+
fi
45+
}
46+
47+
test_expect_success 'showStat unset showPatch unset' '
48+
test_stat_and_patch "<unset>" "<unset>" --stat
49+
'
50+
51+
test_expect_success 'showStat unset showPatch false' '
52+
test_stat_and_patch "<unset>" false --stat
53+
'
54+
55+
test_expect_success 'showStat unset showPatch true' '
56+
test_stat_and_patch "<unset>" true --stat -p
57+
'
58+
59+
test_expect_success 'showStat false showPatch unset' '
60+
test_stat_and_patch false "<unset>"
61+
'
62+
63+
test_expect_success 'showStat false showPatch false' '
64+
test_stat_and_patch false false
65+
'
66+
67+
test_expect_success 'showStat false showPatch true' '
68+
test_stat_and_patch false true -p
69+
'
70+
71+
test_expect_success 'showStat true showPatch unset' '
72+
test_stat_and_patch true "<unset>" --stat
73+
'
74+
75+
test_expect_success 'showStat true showPatch false' '
76+
test_stat_and_patch true false --stat
77+
'
78+
79+
test_expect_success 'showStat true showPatch true' '
80+
test_stat_and_patch true true --stat -p
81+
'
82+
83+
test_done

0 commit comments

Comments
 (0)