summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMarti Raudsepp <marti@voicecom.ee>2015-11-09 15:58:24 +0200
committerTim Graham <timograham@gmail.com>2015-11-11 08:57:46 -0500
commit9cdfdbdd1fea70390e30d204423ab27ba788d422 (patch)
tree84c7c46d28b300d36d1fb36047dd8277ea8c78db /tests
parent43099f543eb8cc3969c66f68579685a87bea4b37 (diff)
[1.8.x] 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. Backport of d3e3703a15cd9d294406121bc43be0c75b1a4e0e from master
Diffstat (limited to 'tests')
-rw-r--r--tests/i18n/tests.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/i18n/tests.py b/tests/i18n/tests.py
index 58ef0c74a8..788a6dec89 100644
--- a/tests/i18n/tests.py
+++ b/tests/i18n/tests.py
@@ -142,6 +142,18 @@ class TranslationTests(TestCase):
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")