From: Bruno Haible Date: Sat, 29 Jul 2023 19:44:56 +0000 (+0200) Subject: btoc32 tests: Renumber tests. X-Git-Tag: v1.0~1012 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=1717bace2871e6b6ccea33be075c500ed49d28f1;p=gnulib.git btoc32 tests: Renumber tests. * tests/test-btoc32-*.sh: Renamed 1 -> 2 -> 3 -> 1. * tests/test-btoc32.c: Update. --- diff --git a/ChangeLog b/ChangeLog index a46ceef2b1..55188989db 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2023-07-29 Bruno Haible + btoc32 tests: Renumber tests. + * tests/test-btoc32-*.sh: Renamed 1 -> 2 -> 3 -> 1. + * tests/test-btoc32.c: Update. + btowc tests: Renumber tests. * tests/test-btowc*.sh: Renamed 1 -> 2 -> 3 -> 1. * tests/test-btowc.c: Update. diff --git a/tests/test-btoc32-1.sh b/tests/test-btoc32-1.sh index 42a479845f..25caea64d5 100755 --- a/tests/test-btoc32-1.sh +++ b/tests/test-btoc32-1.sh @@ -1,15 +1,9 @@ #!/bin/sh -# Test in an ISO-8859-1 or ISO-8859-15 locale. -: "${LOCALE_FR=fr_FR}" -if test $LOCALE_FR = none; then - if test -f /usr/bin/localedef; then - echo "Skipping test: no traditional french locale is installed" - else - echo "Skipping test: no traditional french locale is supported" - fi - exit 77 -fi +# Test whether the POSIX locale has encoding errors. +LC_ALL=C \ +${CHECKER} ./test-btoc32${EXEEXT} 1 || exit 1 +LC_ALL=POSIX \ +${CHECKER} ./test-btoc32${EXEEXT} 1 || exit 1 -LC_ALL=$LOCALE_FR \ -${CHECKER} ./test-btoc32${EXEEXT} 1 +exit 0 diff --git a/tests/test-btoc32-2.sh b/tests/test-btoc32-2.sh index 3a7b267ee7..ba52767bd2 100755 --- a/tests/test-btoc32-2.sh +++ b/tests/test-btoc32-2.sh @@ -1,15 +1,15 @@ #!/bin/sh -# Test whether a specific UTF-8 locale is installed. -: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" -if test $LOCALE_FR_UTF8 = none; then +# Test in an ISO-8859-1 or ISO-8859-15 locale. +: "${LOCALE_FR=fr_FR}" +if test $LOCALE_FR = none; then if test -f /usr/bin/localedef; then - echo "Skipping test: no french Unicode locale is installed" + echo "Skipping test: no traditional french locale is installed" else - echo "Skipping test: no french Unicode locale is supported" + echo "Skipping test: no traditional french locale is supported" fi exit 77 fi -LC_ALL=$LOCALE_FR_UTF8 \ +LC_ALL=$LOCALE_FR \ ${CHECKER} ./test-btoc32${EXEEXT} 2 diff --git a/tests/test-btoc32-3.sh b/tests/test-btoc32-3.sh index 422c3daed5..8c6b180369 100755 --- a/tests/test-btoc32-3.sh +++ b/tests/test-btoc32-3.sh @@ -1,9 +1,15 @@ #!/bin/sh -# Test whether the POSIX locale has encoding errors. -LC_ALL=C \ -${CHECKER} ./test-btoc32${EXEEXT} 3 || exit 1 -LC_ALL=POSIX \ -${CHECKER} ./test-btoc32${EXEEXT} 3 || exit 1 +# Test whether a specific UTF-8 locale is installed. +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" +if test $LOCALE_FR_UTF8 = none; then + if test -f /usr/bin/localedef; then + echo "Skipping test: no french Unicode locale is installed" + else + echo "Skipping test: no french Unicode locale is supported" + fi + exit 77 +fi -exit 0 +LC_ALL=$LOCALE_FR_UTF8 \ +${CHECKER} ./test-btoc32${EXEEXT} 3 diff --git a/tests/test-btoc32.c b/tests/test-btoc32.c index a2c48dde6f..57ec1ebfa6 100644 --- a/tests/test-btoc32.c +++ b/tests/test-btoc32.c @@ -45,30 +45,14 @@ main (int argc, char *argv[]) "C" locale. Furthermore, when you attempt to set the "C" or "POSIX" locale via setlocale(), what you get is a "C" locale with UTF-8 encoding, that is, effectively the "C.UTF-8" locale. */ - if (argc > 1 && strcmp (argv[1], "3") == 0 && MB_CUR_MAX > 1) - argv[1] = "2"; + if (argc > 1 && strcmp (argv[1], "1") == 0 && MB_CUR_MAX > 1) + argv[1] = "3"; #endif if (argc > 1) switch (argv[1][0]) { case '1': - /* Locale encoding is ISO-8859-1 or ISO-8859-15. */ - for (c = 0; c < 0x80; c++) - ASSERT (btoc32 (c) == c); - for (c = 0xA0; c < 0x100; c++) - ASSERT (btoc32 (c) != WEOF); - return 0; - - case '2': - /* Locale encoding is UTF-8. */ - for (c = 0; c < 0x80; c++) - ASSERT (btoc32 (c) == c); - for (c = 0x80; c < 0x100; c++) - ASSERT (btoc32 (c) == WEOF); - return 0; - - case '3': /* C or POSIX locale. */ for (c = 0; c < 0x100; c++) if (c != 0) @@ -88,6 +72,22 @@ main (int argc, char *argv[]) ASSERT (wc == c || wc == 0xDF00 + c); } return 0; + + case '2': + /* Locale encoding is ISO-8859-1 or ISO-8859-15. */ + for (c = 0; c < 0x80; c++) + ASSERT (btoc32 (c) == c); + for (c = 0xA0; c < 0x100; c++) + ASSERT (btoc32 (c) != WEOF); + return 0; + + case '3': + /* Locale encoding is UTF-8. */ + for (c = 0; c < 0x80; c++) + ASSERT (btoc32 (c) == c); + for (c = 0x80; c < 0x100; c++) + ASSERT (btoc32 (c) == WEOF); + return 0; } return 1;