From: Bruno Haible Date: Tue, 24 Jun 2025 07:59:20 +0000 (+0200) Subject: Python: Remove an obsolete unit test. X-Git-Tag: v0.26~67 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=78e9a5d2d9597df9ffd9bc7403875fa43c2bad5d;p=thirdparty%2Fgettext.git Python: Remove an obsolete unit test. Python versions < 2.3 are irrelevant nowadays. * gettext-tools/tests/lang-python-1: Renamed from gettext-tools/tests/lang-python-2. * gettext-tools/tests/Makefile.am (TESTS): Remove lang-python-2. --- diff --git a/gettext-tools/tests/Makefile.am b/gettext-tools/tests/Makefile.am index 3160ed805..51d50692f 100644 --- a/gettext-tools/tests/Makefile.am +++ b/gettext-tools/tests/Makefile.am @@ -234,7 +234,7 @@ TESTS = gettext-1 gettext-2 \ gettextpo-1 sentence-1 \ lang-po \ lang-c lang-c++ lang-c++20 lang-c++26 lang-objc \ - lang-python-1 lang-python-2 \ + lang-python-1 \ lang-java \ lang-csharp \ lang-javascript \ diff --git a/gettext-tools/tests/lang-python-1 b/gettext-tools/tests/lang-python-1 index 50e39db0f..213ba2260 100755 --- a/gettext-tools/tests/lang-python-1 +++ b/gettext-tools/tests/lang-python-1 @@ -1,15 +1,21 @@ #! /bin/sh . "${srcdir=.}/init.sh"; path_prepend_ . ../src -# Test of gettext facilities in the Python language. +# Test of gettext facilities (including plural handling) in the Python +# language. cat <<\EOF > prog1.py +import sys import gettext +n = int(sys.argv[1]) + gettext.textdomain('prog') gettext.bindtextdomain('prog', '.') print(gettext.gettext("'Your command, please?', asked the waiter.")) +print(gettext.ngettext("a piece of cake","%(count)d pieces of cake",n) \ + % { 'count': n }) print(gettext.gettext("%(oldCurrency)s is replaced by %(newCurrency)s.") \ % { 'oldCurrency': "FF", 'newCurrency' : "EUR" }) EOF @@ -22,6 +28,12 @@ cat <<\EOF > prog.ok msgid "'Your command, please?', asked the waiter." msgstr "" +#, python-format +msgid "a piece of cake" +msgid_plural "%(count)d pieces of cake" +msgstr[0] "" +msgstr[1] "" + #, python-format msgid "%(oldCurrency)s is replaced by %(newCurrency)s." msgstr "" @@ -39,6 +51,13 @@ msgstr "" msgid "'Your command, please?', asked the waiter." msgstr "«Votre commande, s'il vous plait», dit le garçon." +# Les gateaux allemands sont les meilleurs du monde. +#, python-format +msgid "a piece of cake" +msgid_plural "%(count)d pieces of cake" +msgstr[0] "un morceau de gateau" +msgstr[1] "%(count)d morceaux de gateau" + # Reverse the arguments. #, python-format msgid "%(oldCurrency)s is replaced by %(newCurrency)s." @@ -58,7 +77,7 @@ test -d fr/LC_MESSAGES || mkdir fr/LC_MESSAGES : ${MSGFMT=msgfmt} ${MSGFMT} -o fr/LC_MESSAGES/prog.mo fr.po -# Test for presence of python version 2.0 or newer. +# Test for presence of python version 2.3 or newer. if (python3 -V) >/dev/null 2>/dev/null; then PYTHON=python3 else @@ -70,7 +89,7 @@ else echo "Skipping test: python not found"; Exit 77 fi fi -case `$PYTHON -c 'import sys; print(sys.hexversion >= 0x20000F0)'` in +case `$PYTHON -c 'import sys; print(sys.hexversion >= 0x20300F0)'` in 1 | True) ;; *) echo "Skipping test: python version too old"; Exit 77;; esac @@ -78,22 +97,24 @@ esac : ${DIFF=diff} cat <<\EOF > prog.ok «Votre commande, s'il vous plait», dit le garçon. +2 morceaux de gateau EUR remplace FF. EOF cat <<\EOF > prog.oku «Votre commande, s'il vous plait», dit le garçon. +2 morceaux de gateau EUR remplace FF. EOF : ${LOCALE_FR=fr_FR} : ${LOCALE_FR_UTF8=fr_FR.UTF-8} if test $LOCALE_FR_UTF8 != none; then - LANGUAGE= LC_ALL=$LOCALE_FR_UTF8 PYTHONIOENCODING=UTF-8 $PYTHON prog1.py > prog.out || Exit 1 + LANGUAGE= LC_ALL=$LOCALE_FR_UTF8 PYTHONIOENCODING=UTF-8 $PYTHON prog1.py 2 > prog.out || Exit 1 ${DIFF} prog.oku prog.out || Exit 1 fi if test -z "$ISO8859_LOCALE_UNSUPPORTED"; then if test $LOCALE_FR != none; then - LANGUAGE= LC_ALL=$LOCALE_FR PYTHONIOENCODING=ISO-8859-1 $PYTHON prog1.py > prog.out || Exit 1 + LANGUAGE= LC_ALL=$LOCALE_FR PYTHONIOENCODING=ISO-8859-1 $PYTHON prog1.py 2 > prog.out || Exit 1 ${DIFF} prog.ok prog.out || Exit 1 fi if test $LOCALE_FR = none && test $LOCALE_FR_UTF8 = none; then diff --git a/gettext-tools/tests/lang-python-2 b/gettext-tools/tests/lang-python-2 deleted file mode 100755 index 6449f29df..000000000 --- a/gettext-tools/tests/lang-python-2 +++ /dev/null @@ -1,139 +0,0 @@ -#! /bin/sh -. "${srcdir=.}/init.sh"; path_prepend_ . ../src - -# Test of gettext facilities (including plural handling) in the Python -# language. - -cat <<\EOF > prog2.py -import sys -import gettext - -n = int(sys.argv[1]) - -gettext.textdomain('prog') -gettext.bindtextdomain('prog', '.') - -print(gettext.gettext("'Your command, please?', asked the waiter.")) -print(gettext.ngettext("a piece of cake","%(count)d pieces of cake",n) \ - % { 'count': n }) -print(gettext.gettext("%(oldCurrency)s is replaced by %(newCurrency)s.") \ - % { 'oldCurrency': "FF", 'newCurrency' : "EUR" }) -EOF - -: ${XGETTEXT=xgettext} -${XGETTEXT} -o prog.tmp --omit-header --no-location prog2.py || Exit 1 -LC_ALL=C tr -d '\r' < prog.tmp > prog.pot || Exit 1 - -cat <<\EOF > prog.ok -msgid "'Your command, please?', asked the waiter." -msgstr "" - -#, python-format -msgid "a piece of cake" -msgid_plural "%(count)d pieces of cake" -msgstr[0] "" -msgstr[1] "" - -#, python-format -msgid "%(oldCurrency)s is replaced by %(newCurrency)s." -msgstr "" -EOF - -: ${DIFF=diff} -${DIFF} prog.ok prog.pot || Exit 1 - -cat <<\EOF > fr.po -msgid "" -msgstr "" -"Content-Type: text/plain; charset=ISO-8859-1\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -msgid "'Your command, please?', asked the waiter." -msgstr "«Votre commande, s'il vous plait», dit le garçon." - -# Les gateaux allemands sont les meilleurs du monde. -#, python-format -msgid "a piece of cake" -msgid_plural "%(count)d pieces of cake" -msgstr[0] "un morceau de gateau" -msgstr[1] "%(count)d morceaux de gateau" - -# Reverse the arguments. -#, python-format -msgid "%(oldCurrency)s is replaced by %(newCurrency)s." -msgstr "%(newCurrency)s remplace %(oldCurrency)s." -EOF - -: ${MSGMERGE=msgmerge} -${MSGMERGE} -q -o fr.po.tmp fr.po prog.pot || Exit 1 -LC_ALL=C tr -d '\r' < fr.po.tmp > fr.po.new || Exit 1 - -: ${DIFF=diff} -${DIFF} fr.po fr.po.new || Exit 1 - -test -d fr || mkdir fr -test -d fr/LC_MESSAGES || mkdir fr/LC_MESSAGES - -: ${MSGFMT=msgfmt} -${MSGFMT} -o fr/LC_MESSAGES/prog.mo fr.po - -# Test for presence of python version 2.3 or newer. -if (python3 -V) >/dev/null 2>/dev/null; then - PYTHON=python3 -else - if (python -V) >/dev/null 2>/dev/null; then - PYTHON=python - # Avoid a bug in Python's gettext.py with Python 2.3 ... 2.7. - ISO8859_LOCALE_UNSUPPORTED=yes - else - echo "Skipping test: python not found"; Exit 77 - fi -fi -case `$PYTHON -c 'import sys; print(sys.hexversion >= 0x20300F0)'` in - 1 | True) ;; - *) echo "Skipping test: python version too old"; Exit 77;; -esac - -: ${DIFF=diff} -cat <<\EOF > prog.ok -«Votre commande, s'il vous plait», dit le garçon. -2 morceaux de gateau -EUR remplace FF. -EOF -cat <<\EOF > prog.oku -«Votre commande, s'il vous plait», dit le garçon. -2 morceaux de gateau -EUR remplace FF. -EOF - -: ${LOCALE_FR=fr_FR} -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} -if test $LOCALE_FR_UTF8 != none; then - LANGUAGE= LC_ALL=$LOCALE_FR_UTF8 PYTHONIOENCODING=UTF-8 $PYTHON prog2.py 2 > prog.out || Exit 1 - ${DIFF} prog.oku prog.out || Exit 1 -fi -if test -z "$ISO8859_LOCALE_UNSUPPORTED"; then - if test $LOCALE_FR != none; then - LANGUAGE= LC_ALL=$LOCALE_FR PYTHONIOENCODING=ISO-8859-1 $PYTHON prog2.py 2 > prog.out || Exit 1 - ${DIFF} prog.ok prog.out || Exit 1 - fi - if test $LOCALE_FR = none && test $LOCALE_FR_UTF8 = none; then - if test -f /usr/bin/localedef; then - echo "Skipping test: no french locale is installed" - else - echo "Skipping test: no french locale is supported" - fi - Exit 77 - fi -else - 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 -fi - -Exit 0