summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorQi Zhao <zhaoqi99@outlook.com>2020-10-08 21:51:14 +0800
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2020-10-09 08:44:32 +0200
commit8c403b17f94a4ace87bfdd7d40bbc3afb18f7577 (patch)
tree75043715e3f00f71563717476ff7c691a42aaa20 /tests
parentb0e5e7b67153e6252bcad959ccb061402e7ecd58 (diff)
[3.1.x] Fixed #32080 -- Fixed displaying Unicode chars in forms.JSONField and read-only JSONField values in admin.
Backport of de81676b51e4dad510ef387c3ae625f9091fe57f from master
Diffstat (limited to 'tests')
-rw-r--r--tests/admin_utils/tests.py1
-rw-r--r--tests/forms_tests/field_tests/test_jsonfield.py6
2 files changed, 7 insertions, 0 deletions
diff --git a/tests/admin_utils/tests.py b/tests/admin_utils/tests.py
index cf0d3e064e..da9d24bed5 100644
--- a/tests/admin_utils/tests.py
+++ b/tests/admin_utils/tests.py
@@ -184,6 +184,7 @@ class UtilsTests(SimpleTestCase):
({'a': {'b': 'c'}}, '{"a": {"b": "c"}}'),
(['a', 'b'], '["a", "b"]'),
('a', '"a"'),
+ ({'a': '你好 世界'}, '{"a": "你好 世界"}'),
({('a', 'b'): 'c'}, "{('a', 'b'): 'c'}"), # Invalid JSON.
]
for value, display_value in tests:
diff --git a/tests/forms_tests/field_tests/test_jsonfield.py b/tests/forms_tests/field_tests/test_jsonfield.py
index 892a23a6a7..f9e4281a01 100644
--- a/tests/forms_tests/field_tests/test_jsonfield.py
+++ b/tests/forms_tests/field_tests/test_jsonfield.py
@@ -29,6 +29,12 @@ class JSONFieldTest(SimpleTestCase):
self.assertEqual(field.prepare_value({'a': 'b'}), '{"a": "b"}')
self.assertEqual(field.prepare_value(None), 'null')
self.assertEqual(field.prepare_value('foo'), '"foo"')
+ self.assertEqual(field.prepare_value('你好,世界'), '"你好,世界"')
+ self.assertEqual(field.prepare_value({'a': '😀🐱'}), '{"a": "😀🐱"}')
+ self.assertEqual(
+ field.prepare_value(["你好,世界", "jaźń"]),
+ '["你好,世界", "jaźń"]',
+ )
def test_widget(self):
field = JSONField()