patch-id-test: test stable and unstable behaviour
[alt-git.git] / t / t4210-log-i18n.sh
blob52a74729ba54105756956f52ff1442a1bd8e649f
1 #!/bin/sh
3 test_description='test log with i18n features'
4 . ./test-lib.sh
6 # two forms of é
7 utf8_e=$(printf '\303\251')
8 latin1_e=$(printf '\351')
10 test_expect_success 'create commits in different encodings' '
11 test_tick &&
12 cat >msg <<-EOF &&
13 utf8
15 t${utf8_e}st
16 EOF
17 git add msg &&
18 git -c i18n.commitencoding=utf8 commit -F msg &&
19 cat >msg <<-EOF &&
20 latin1
22 t${latin1_e}st
23 EOF
24 git add msg &&
25 git -c i18n.commitencoding=ISO-8859-1 commit -F msg
28 test_expect_success 'log --grep searches in log output encoding (utf8)' '
29 cat >expect <<-\EOF &&
30 latin1
31 utf8
32 EOF
33 git log --encoding=utf8 --format=%s --grep=$utf8_e >actual &&
34 test_cmp expect actual
37 test_expect_success 'log --grep searches in log output encoding (latin1)' '
38 cat >expect <<-\EOF &&
39 latin1
40 utf8
41 EOF
42 git log --encoding=ISO-8859-1 --format=%s --grep=$latin1_e >actual &&
43 test_cmp expect actual
46 test_expect_success 'log --grep does not find non-reencoded values (utf8)' '
47 >expect &&
48 git log --encoding=utf8 --format=%s --grep=$latin1_e >actual &&
49 test_cmp expect actual
52 test_expect_success 'log --grep does not find non-reencoded values (latin1)' '
53 >expect &&
54 git log --encoding=ISO-8859-1 --format=%s --grep=$utf8_e >actual &&
55 test_cmp expect actual
58 test_done