about summary refs log tree commit diff
path: root/third_party/git/t/t4025-hunk-header.sh
blob: 35578f2bb91dab8a00f40b5fbb26bd0a31ca7d58 (plain) (blame)
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
#!/bin/sh

test_description='diff hunk header truncation'

. ./test-lib.sh

N='日本語'
N1='日'
N2='日本'
NS="$N$N$N$N$N$N$N$N$N$N$N$N$N"

test_expect_success setup '

	(
		echo "A $NS" &&
		for c in B C D E F G H I J K
		do
			echo "  $c"
		done &&
		echo "L  $NS" &&
		for c in M N O P Q R S T U V
		do
			echo "  $c"
		done
	) >file &&
	git add file &&

	sed -e "/^  [EP]/s/$/ modified/" <file >file+ &&
	mv file+ file

'

test_expect_success 'hunk header truncation with an overly long line' '

	git diff | sed -n -e "s/^.*@@//p" >actual &&
	(
		echo " A $N$N$N$N$N$N$N$N$N2" &&
		echo " L  $N$N$N$N$N$N$N$N$N1"
	) >expected &&
	test_cmp expected actual

'

test_done