Fixed #19272 -- Fixed gettext_lazy returned type on Python 2
Thanks tyrion for the report.
This commit is contained in:
parent
1620c27936
commit
550ddc66b4
|
@ -246,7 +246,8 @@ def do_translate(message, translation_function):
|
|||
"""
|
||||
global _default
|
||||
|
||||
eol_message = message.replace('\r\n', '\n').replace('\r', '\n')
|
||||
# str() is allowing a bytestring message to remain bytestring on Python 2
|
||||
eol_message = message.replace(str('\r\n'), str('\n')).replace(str('\r'), str('\n'))
|
||||
t = getattr(_active, "value", None)
|
||||
if t is not None:
|
||||
result = getattr(t, translation_function)(eol_message)
|
||||
|
|
|
@ -83,6 +83,10 @@ class TranslationTests(TestCase):
|
|||
s4 = ugettext_lazy('Some other string')
|
||||
self.assertEqual(False, s == s4)
|
||||
|
||||
if not six.PY3:
|
||||
# On Python 2, gettext_lazy should not transform a bytestring to unicode
|
||||
self.assertEqual(gettext_lazy(b"test").upper(), b"TEST")
|
||||
|
||||
def test_lazy_pickle(self):
|
||||
s1 = ugettext_lazy("test")
|
||||
self.assertEqual(six.text_type(s1), "test")
|
||||
|
|
Loading…
Reference in New Issue