summaryrefslogtreecommitdiffstats
path: root/t/t4040-whitespace-status.sh
blob: e70e020ae9349c378b4b922933668932e95acc8d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#!/bin/sh

test_description='diff --exit-code with whitespace'

TEST_PASSES_SANITIZE_LEAK=true
. ./test-lib.sh

test_expect_success setup '
	mkdir a b &&
	echo >c &&
	echo >a/d &&
	echo >b/e &&
	git add . &&
	test_tick &&
	git commit -m initial &&
	echo " " >a/d &&
	test_tick &&
	git commit -a -m second &&
	echo "  " >a/d &&
	echo " " >b/e &&
	git add a/d
'

test_expect_success 'diff-tree --exit-code' '
	test_must_fail git diff --exit-code HEAD^ HEAD &&
	test_must_fail git diff-tree --exit-code HEAD^ HEAD
'

test_expect_success 'diff-tree -b --exit-code' '
	git diff -b --exit-code HEAD^ HEAD &&
	git diff-tree -b -p --exit-code HEAD^ HEAD &&
	git diff-tree -b --exit-code HEAD^ HEAD
'

test_expect_success 'diff-index --cached --exit-code' '
	test_must_fail git diff --cached --exit-code HEAD &&
	test_must_fail git diff-index --cached --exit-code HEAD
'

test_expect_success 'diff-index -b -p --cached --exit-code' '
	git diff -b --cached --exit-code HEAD &&
	git diff-index -b -p --cached --exit-code HEAD
'

test_expect_success 'diff-index --exit-code' '
	test_must_fail git diff --exit-code HEAD &&
	test_must_fail git diff-index --exit-code HEAD
'

test_expect_success 'diff-index -b -p --exit-code' '
	git diff -b --exit-code HEAD &&
	git diff-index -b -p --exit-code HEAD
'

test_expect_success 'diff-files --exit-code' '
	test_must_fail git diff --exit-code &&
	test_must_fail git diff-files --exit-code
'

test_expect_success 'diff-files -b -p --exit-code' '
	git diff -b --exit-code &&
	git diff-files -b -p --exit-code
'

test_expect_success 'diff-files --diff-filter --quiet' '
	git reset --hard &&
	rm a/d &&
	echo x >>b/e &&
	test_must_fail git diff-files --diff-filter=M --quiet
'

test_expect_success 'diff-tree --diff-filter --quiet' '
	git commit -a -m "worktree state" &&
	test_must_fail git diff-tree --diff-filter=M --quiet HEAD^ HEAD
'

test_done