diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/serializers/test_json.py | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/tests/serializers/test_json.py b/tests/serializers/test_json.py index 4239dcef8d..d8d445d1f9 100644 --- a/tests/serializers/test_json.py +++ b/tests/serializers/test_json.py @@ -6,7 +6,9 @@ import re from django.core import serializers from django.core.serializers.base import DeserializationError -from django.test import TestCase, TransactionTestCase +from django.core.serializers.json import DjangoJSONEncoder +from django.test import SimpleTestCase, TestCase, TransactionTestCase +from django.utils.translation import override, ugettext_lazy from .models import Score from .tests import SerializersTestBase, SerializersTransactionTestBase @@ -271,3 +273,16 @@ class JsonSerializerTransactionTestCase(SerializersTransactionTestBase, Transact "name": "Agnes" } }]""" + + +class DjangoJSONEncoderTests(SimpleTestCase): + def test_lazy_string_encoding(self): + self.assertEqual( + json.dumps({'lang': ugettext_lazy("French")}, cls=DjangoJSONEncoder), + '{"lang": "French"}' + ) + with override('fr'): + self.assertEqual( + json.dumps({'lang': ugettext_lazy("French")}, cls=DjangoJSONEncoder), + '{"lang": "Fran\\u00e7ais"}' + ) |
