diff options
| author | Marti Raudsepp <marti@voicecom.ee> | 2015-11-09 15:58:24 +0200 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2015-11-11 08:56:10 -0500 |
| commit | d3e3703a15cd9d294406121bc43be0c75b1a4e0e (patch) | |
| tree | 6debab91c30e7d5e5addf24660f7d5245e73cb2b /tests | |
| parent | 4c593eaa5f6767ac56a677299c984ee46c88a2cb (diff) | |
Fixed #25720 -- Made gettext() return bytestring on Python 2 if input is bytestring.
This is consistent with the behavior of Django 1.7.x and earlier.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/i18n/tests.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/i18n/tests.py b/tests/i18n/tests.py index c01098eab1..1de7b11b81 100644 --- a/tests/i18n/tests.py +++ b/tests/i18n/tests.py @@ -144,6 +144,18 @@ class TranslationTests(SimpleTestCase): self.assertNotEqual(s, s4) @skipUnless(six.PY2, "No more bytestring translations on PY3") + def test_bytestrings(self): + """gettext() returns a bytestring if input is bytestring.""" + + # Using repr() to check translated text and type + self.assertEqual(repr(gettext(b"Time")), repr(b"Time")) + self.assertEqual(repr(gettext("Time")), repr("Time")) + + with translation.override('de', deactivate=True): + self.assertEqual(repr(gettext(b"Time")), repr(b"Zeit")) + self.assertEqual(repr(gettext("Time")), repr(b"Zeit")) + + @skipUnless(six.PY2, "No more bytestring translations on PY3") def test_lazy_and_bytestrings(self): # On Python 2, (n)gettext_lazy should not transform a bytestring to unicode self.assertEqual(gettext_lazy(b"test").upper(), b"TEST") |
