Merge branch 'jc/maint-simpler-common-prefix'
[gitweb.git] / t / t9129-git-svn-i18n-commitencoding.sh
index 9c7b1ad18bca943e6c5b6e50f55d914ccadbfce8..1e9a2eb12bee55474f9bc10a7e31f5c01d6403f8 100755 (executable)
@@ -14,10 +14,22 @@ compare_git_head_with () {
        test_cmp current "$1"
 }
 
+a_utf8_locale=$(locale -a | sed -n '/\.[uU][tT][fF]-*8$/{
+       p
+       q
+}')
+
+if test -n "$a_utf8_locale"
+then
+       test_set_prereq UTF8
+else
+       say "UTF-8 locale not available, some tests are skipped"
+fi
+
 compare_svn_head_with () {
        # extract just the log message and strip out committer info.
        # don't use --limit here since svn 1.1.x doesn't have it,
-       LC_ALL=en_US.UTF-8 svn log `git svn info --url` | perl -w -e '
+       LC_ALL="$a_utf8_locale" svn log `git svn info --url` | perl -w -e '
                use bytes;
                $/ = ("-"x72) . "\n";
                my @x = <STDIN>;
@@ -29,16 +41,16 @@ compare_svn_head_with () {
        test_cmp current "$1"
 }
 
-for H in ISO-8859-1 EUCJP ISO-2022-JP
+for H in ISO8859-1 eucJP ISO-2022-JP
 do
        test_expect_success "$H setup" '
                mkdir $H &&
-               svn import -m "$H test" $H "$svnrepo"/$H &&
+               svn_cmd import -m "$H test" $H "$svnrepo"/$H &&
                git svn clone "$svnrepo"/$H $H
        '
 done
 
-for H in ISO-8859-1 EUCJP ISO-2022-JP
+for H in ISO8859-1 eucJP ISO-2022-JP
 do
        test_expect_success "$H commit on git side" '
        (
@@ -55,7 +67,7 @@ do
        '
 done
 
-for H in ISO-8859-1 EUCJP ISO-2022-JP
+for H in ISO8859-1 eucJP ISO-2022-JP
 do
        test_expect_success "$H dcommit to svn" '
        (
@@ -69,25 +81,21 @@ do
        '
 done
 
-if locale -a |grep -q en_US.utf8; then
-       test_expect_success 'ISO-8859-1 should match UTF-8 in svn' '
+test_expect_success UTF8 'ISO-8859-1 should match UTF-8 in svn' '
        (
-               cd ISO-8859-1 &&
+               cd ISO8859-1 &&
                compare_svn_head_with "$TEST_DIRECTORY"/t3900/1-UTF-8.txt
        )
-       '
+'
 
-       for H in EUCJP ISO-2022-JP
-       do
-               test_expect_success '$H should match UTF-8 in svn' '
+for H in eucJP ISO-2022-JP
+do
+       test_expect_success UTF8 "$H should match UTF-8 in svn" '
                (
                        cd $H &&
                        compare_svn_head_with "$TEST_DIRECTORY"/t3900/2-UTF-8.txt
                )
-               '
-       done
-else
-       say "UTF-8 locale not available, test skipped"
-fi
+       '
+done
 
 test_done