summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorTim Heap <tim@timheap.me>2017-03-10 10:45:50 +1100
committerTim Graham <timograham@gmail.com>2017-05-27 09:19:42 -0400
commit5b6181f4d58f63e7d2b52ab94e162e5ce8980f12 (patch)
tree326c51473d07cec66b947927039d347d28fbfe0b /tests
parent2f09a285582cb475a9d27067808d9beefa7f9fba (diff)
Fixed #27922 -- Added ErrorDict.get_json_data().
Diffstat (limited to 'tests')
-rw-r--r--tests/forms_tests/tests/test_forms.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/tests/forms_tests/tests/test_forms.py b/tests/forms_tests/tests/test_forms.py
index 63209a1f62..cc73819091 100644
--- a/tests/forms_tests/tests/test_forms.py
+++ b/tests/forms_tests/tests/test_forms.py
@@ -3216,13 +3216,14 @@ Good luck picking a username that doesn&#39;t already exist.</p>
for error in control:
self.assertInHTML(error, errors)
- errors = json.loads(form.errors.as_json())
+ errors = form.errors.get_json_data()
control = {
'foo': [{'code': 'required', 'message': 'This field is required.'}],
'bar': [{'code': 'required', 'message': 'This field is required.'}],
'__all__': [{'code': 'secret', 'message': 'Non-field error.'}]
}
self.assertEqual(errors, control)
+ self.assertEqual(json.dumps(errors), form.errors.as_json())
def test_error_dict_as_json_escape_html(self):
"""#21962 - adding html escape flag to ErrorDict"""
@@ -3247,8 +3248,13 @@ Good luck picking a username that doesn&#39;t already exist.</p>
errors = json.loads(form.errors.as_json())
self.assertEqual(errors, control)
+ escaped_error = '&lt;p&gt;Non-field error.&lt;/p&gt;'
+ self.assertEqual(
+ form.errors.get_json_data(escape_html=True)['__all__'][0]['message'],
+ escaped_error
+ )
errors = json.loads(form.errors.as_json(escape_html=True))
- control['__all__'][0]['message'] = '&lt;p&gt;Non-field error.&lt;/p&gt;'
+ control['__all__'][0]['message'] = escaped_error
self.assertEqual(errors, control)
def test_error_list(self):
@@ -3270,10 +3276,12 @@ Good luck picking a username that doesn&#39;t already exist.</p>
'<ul class="errorlist"><li>Foo</li><li>Foobar</li></ul>'
)
+ errors = e.get_json_data()
self.assertEqual(
- json.loads(e.as_json()),
+ errors,
[{"message": "Foo", "code": ""}, {"message": "Foobar", "code": "foobar"}]
)
+ self.assertEqual(json.dumps(errors), e.as_json())
def test_error_list_class_not_specified(self):
e = ErrorList()