Skip to content

Commit

Permalink
MinGW: disable legacy encoding tests
Browse files Browse the repository at this point in the history
On Windows, all native APIs are Unicode-based. It is impossible to pass
legacy encoded byte arrays to a process via command line or environment
variables. Disable the tests that try to do so.

In t3901, most tests still work if we don't mess up the repository encoding
in setup, so don't switch to ISO-8859-1 on MinGW.

Note that i18n tests that do their encoding tricks via encoded files (such
as t3900) are not affected by this.

Signed-off-by: Karsten Blees <[email protected]>
Signed-off-by: Stepan Kasal <[email protected]>
Signed-off-by: Junio C Hamano <[email protected]>
  • Loading branch information
kblees authored and gitster committed Jul 21, 2014
1 parent 480cd53 commit 32f4cb6
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 15 deletions.
19 changes: 11 additions & 8 deletions t/t3901-i18n-patch.sh
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,13 @@ test_expect_success setup '
git add yours &&
git commit -s -m "Second on side" &&
# the second one on the side branch is ISO-8859-1
git config i18n.commitencoding ISO8859-1 &&
# use author and committer name in ISO-8859-1 to match it.
. "$TEST_DIRECTORY"/t3901-8859-1.txt &&
if test_have_prereq NOT_MINGW
then
# the second one on the side branch is ISO-8859-1
git config i18n.commitencoding ISO8859-1 &&
# use author and committer name in ISO-8859-1 to match it.
. "$TEST_DIRECTORY"/t3901-8859-1.txt
fi &&
test_tick &&
echo Yet another >theirs &&
git add theirs &&
Expand Down Expand Up @@ -119,7 +122,7 @@ test_expect_success 'rebase (U/L)' '
check_encoding 2
'

test_expect_success 'rebase (L/L)' '
test_expect_success NOT_MINGW 'rebase (L/L)' '
# In this test we want ISO-8859-1 encoded commits as the result
git config i18n.commitencoding ISO8859-1 &&
git config i18n.logoutputencoding ISO8859-1 &&
Expand All @@ -131,7 +134,7 @@ test_expect_success 'rebase (L/L)' '
check_encoding 2 8859
'

test_expect_success 'rebase (L/U)' '
test_expect_success NOT_MINGW 'rebase (L/U)' '
# This is pathological -- use UTF-8 as intermediate form
# to get ISO-8859-1 results.
git config i18n.commitencoding ISO8859-1 &&
Expand Down Expand Up @@ -159,7 +162,7 @@ test_expect_success 'cherry-pick(U/U)' '
check_encoding 3
'

test_expect_success 'cherry-pick(L/L)' '
test_expect_success NOT_MINGW 'cherry-pick(L/L)' '
# Both the commitencoding and logoutputencoding is set to ISO-8859-1
git config i18n.commitencoding ISO8859-1 &&
Expand Down Expand Up @@ -189,7 +192,7 @@ test_expect_success 'cherry-pick(U/L)' '
check_encoding 3
'

test_expect_success 'cherry-pick(L/U)' '
test_expect_success NOT_MINGW 'cherry-pick(L/U)' '
# Again, the commitencoding is set to ISO-8859-1 but
# logoutputencoding is set to UTF-8.
Expand Down
6 changes: 3 additions & 3 deletions t/t4201-shortlog.sh
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ test_expect_success 'output from user-defined format is re-wrapped' '
test_cmp expect log.predictable
'

test_expect_success 'shortlog wrapping' '
test_expect_success NOT_MINGW 'shortlog wrapping' '
cat >expect <<\EOF &&
A U Thor (5):
Test
Expand All @@ -114,7 +114,7 @@ EOF
test_cmp expect out
'

test_expect_success 'shortlog from non-git directory' '
test_expect_success NOT_MINGW 'shortlog from non-git directory' '
git log HEAD >log &&
GIT_DIR=non-existing git shortlog -w <log >out &&
test_cmp expect out
Expand Down Expand Up @@ -159,7 +159,7 @@ $DSCHO (2):
EOF

test_expect_success 'shortlog encoding' '
test_expect_success NOT_MINGW 'shortlog encoding' '
git reset --hard "$commit" &&
git config --unset i18n.commitencoding &&
echo 2 > a1 &&
Expand Down
8 changes: 4 additions & 4 deletions t/t8005-blame-i18n.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ author $SJIS_NAME
summary $SJIS_MSG
EOF

test_expect_success \
test_expect_success NOT_MINGW \
'blame respects i18n.commitencoding' '
git blame --incremental file | \
egrep "^(author|summary) " > actual &&
Expand All @@ -49,7 +49,7 @@ author $EUC_JAPAN_NAME
summary $EUC_JAPAN_MSG
EOF

test_expect_success \
test_expect_success NOT_MINGW \
'blame respects i18n.logoutputencoding' '
git config i18n.logoutputencoding eucJP &&
git blame --incremental file | \
Expand All @@ -66,7 +66,7 @@ author $UTF8_NAME
summary $UTF8_MSG
EOF

test_expect_success \
test_expect_success NOT_MINGW \
'blame respects --encoding=UTF-8' '
git blame --incremental --encoding=UTF-8 file | \
egrep "^(author|summary) " > actual &&
Expand All @@ -82,7 +82,7 @@ author $UTF8_NAME
summary $UTF8_MSG
EOF

test_expect_success \
test_expect_success NOT_MINGW \
'blame respects --encoding=none' '
git blame --incremental --encoding=none file | \
egrep "^(author|summary) " > actual &&
Expand Down

0 comments on commit 32f4cb6

Please sign in to comment.