]> git.ipfire.org Git - thirdparty/git.git/blame - t/t3907-stash-show-config.sh
Merge branch 'wb/fsmonitor-bitmap-fix'
[thirdparty/git.git] / t / t3907-stash-show-config.sh
CommitLineData
dac566c5
PSU
1#!/bin/sh
2
3test_description='Test git stash show configuration.'
4
5. ./test-lib.sh
6
7test_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)
15test_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
47test_expect_success 'showStat unset showPatch unset' '
48 test_stat_and_patch "<unset>" "<unset>" --stat
49'
50
51test_expect_success 'showStat unset showPatch false' '
52 test_stat_and_patch "<unset>" false --stat
53'
54
55test_expect_success 'showStat unset showPatch true' '
56 test_stat_and_patch "<unset>" true --stat -p
57'
58
59test_expect_success 'showStat false showPatch unset' '
60 test_stat_and_patch false "<unset>"
61'
62
63test_expect_success 'showStat false showPatch false' '
64 test_stat_and_patch false false
65'
66
67test_expect_success 'showStat false showPatch true' '
68 test_stat_and_patch false true -p
69'
70
71test_expect_success 'showStat true showPatch unset' '
72 test_stat_and_patch true "<unset>" --stat
73'
74
75test_expect_success 'showStat true showPatch false' '
76 test_stat_and_patch true false --stat
77'
78
79test_expect_success 'showStat true showPatch true' '
80 test_stat_and_patch true true --stat -p
81'
82
83test_done