mirror of
https://github.com/git/git.git
synced 2024-09-22 04:20:47 +02:00
bb43414b37
On IRIX 6.5 CP1251 is unknown, but WIN1251 (which seems to be a non-standard name) is known. On Solaris 10, the opposite is true. Solaris also knows CP1251 as WINDOWS-1251, but this too is not recognized on IRIX. I could not find a name that both platforms recognized for this character set. An alternative character set which covers the same alphabet seems to be the ISO8859-5 character set. Both platforms support this character set, so use it instead. This allows t8005.4 to pass on Solaris 7, and part of the test to pass on IRIX. (My IRIX can't convert SJIS to UTF-8 :( Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Junio C Hamano <gitster@pobox.com>
93 lines
2.0 KiB
Bash
Executable File
93 lines
2.0 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
test_description='git blame encoding conversion'
|
|
. ./test-lib.sh
|
|
|
|
. "$TEST_DIRECTORY"/t8005/utf8.txt
|
|
. "$TEST_DIRECTORY"/t8005/iso8859-5.txt
|
|
. "$TEST_DIRECTORY"/t8005/sjis.txt
|
|
|
|
test_expect_success 'setup the repository' '
|
|
# Create the file
|
|
echo "UTF-8 LINE" > file &&
|
|
git add file &&
|
|
git commit --author "$UTF8_NAME <utf8@localhost>" -m "$UTF8_MSG" &&
|
|
|
|
echo "KOI8-R LINE" >> file &&
|
|
git add file &&
|
|
git config i18n.commitencoding ISO8859-5 &&
|
|
git commit --author "$ISO8859_5_NAME <iso8859-5@localhost>" -m "$ISO8859_5_MSG" &&
|
|
|
|
echo "SJIS LINE" >> file &&
|
|
git add file &&
|
|
git config i18n.commitencoding SJIS &&
|
|
git commit --author "$SJIS_NAME <sjis@localhost>" -m "$SJIS_MSG"
|
|
'
|
|
|
|
cat >expected <<EOF
|
|
author $SJIS_NAME
|
|
summary $SJIS_MSG
|
|
author $SJIS_NAME
|
|
summary $SJIS_MSG
|
|
author $SJIS_NAME
|
|
summary $SJIS_MSG
|
|
EOF
|
|
|
|
test_expect_success \
|
|
'blame respects i18n.commitencoding' '
|
|
git blame --incremental file | \
|
|
egrep "^(author|summary) " > actual &&
|
|
test_cmp actual expected
|
|
'
|
|
|
|
cat >expected <<EOF
|
|
author $ISO8859_5_NAME
|
|
summary $ISO8859_5_MSG
|
|
author $ISO8859_5_NAME
|
|
summary $ISO8859_5_MSG
|
|
author $ISO8859_5_NAME
|
|
summary $ISO8859_5_MSG
|
|
EOF
|
|
|
|
test_expect_success \
|
|
'blame respects i18n.logoutputencoding' '
|
|
git config i18n.logoutputencoding ISO8859-5 &&
|
|
git blame --incremental file | \
|
|
egrep "^(author|summary) " > actual &&
|
|
test_cmp actual expected
|
|
'
|
|
|
|
cat >expected <<EOF
|
|
author $UTF8_NAME
|
|
summary $UTF8_MSG
|
|
author $UTF8_NAME
|
|
summary $UTF8_MSG
|
|
author $UTF8_NAME
|
|
summary $UTF8_MSG
|
|
EOF
|
|
|
|
test_expect_success \
|
|
'blame respects --encoding=UTF-8' '
|
|
git blame --incremental --encoding=UTF-8 file | \
|
|
egrep "^(author|summary) " > actual &&
|
|
test_cmp actual expected
|
|
'
|
|
|
|
cat >expected <<EOF
|
|
author $SJIS_NAME
|
|
summary $SJIS_MSG
|
|
author $ISO8859_5_NAME
|
|
summary $ISO8859_5_MSG
|
|
author $UTF8_NAME
|
|
summary $UTF8_MSG
|
|
EOF
|
|
|
|
test_expect_success \
|
|
'blame respects --encoding=none' '
|
|
git blame --incremental --encoding=none file | \
|
|
egrep "^(author|summary) " > actual &&
|
|
test_cmp actual expected
|
|
'
|
|
|
|
test_done
|