Commit 85e7a5e1 authored by Aymeric Augustin's avatar Aymeric Augustin
Browse files

[py3] Stopped attempting to translate bytes.

That goes actively against the goal of cleaning string handling.
parent 2284419a
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -79,10 +79,10 @@ def pgettext(context, message):
def npgettext(context, singular, plural, number):
    return _trans.npgettext(context, singular, plural, number)

ngettext_lazy = lazy(ngettext, bytes)
gettext_lazy = lazy(gettext, bytes)
ungettext_lazy = lazy(ungettext, six.text_type)
gettext_lazy = lazy(gettext, str)
ngettext_lazy = lazy(ngettext, str)
ugettext_lazy = lazy(ugettext, six.text_type)
ungettext_lazy = lazy(ungettext, six.text_type)
pgettext_lazy = lazy(pgettext, six.text_type)
npgettext_lazy = lazy(npgettext, six.text_type)

+9 −2
Original line number Diff line number Diff line
@@ -259,6 +259,11 @@ def do_translate(message, translation_function):
    return result

def gettext(message):
    """
    Returns a string of the translation of the message.

    Returns a string on Python 3 and an UTF-8-encoded bytestring on Python 2.
    """
    return do_translate(message, 'gettext')

if six.PY3:
@@ -296,8 +301,10 @@ def do_ntranslate(singular, plural, number, translation_function):

def ngettext(singular, plural, number):
    """
    Returns a UTF-8 bytestring of the translation of either the singular or
    plural, based on the number.
    Returns a string of the translation of either the singular or plural,
    based on the number.

    Returns a string on Python 3 and an UTF-8-encoded bytestring on Python 2.
    """
    return do_ntranslate(singular, plural, number, 'ngettext')

+1 −1
Original line number Diff line number Diff line
@@ -232,7 +232,7 @@ class TranslationTests(TestCase):
        """
        Translating a string requiring no auto-escaping shouldn't change the "safe" status.
        """
        s = mark_safe(b'Password')
        s = mark_safe(str('Password'))
        self.assertEqual(SafeString, type(s))
        with translation.override('de', deactivate=True):
            self.assertEqual(SafeUnicode, type(ugettext(s)))