summaryrefslogtreecommitdiff
path: root/tests/test_utils
diff options
context:
space:
mode:
authorPratyush Mittal <pratyushmittal@gmail.com>2021-10-28 23:45:01 +0530
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2021-10-29 12:09:23 +0200
commitf38458fe56bf8850da72a924bd2e8ff59c6adf06 (patch)
tree5da6146a43001407d96703fbf8ff2b527e3f9e56 /tests/test_utils
parent073b7b5915fdfb89a144e81173176ee13ff92a25 (diff)
downloaddjango-f38458fe56bf8850da72a924bd2e8ff59c6adf06.tar.gz
Fixed #33236 -- Fixed assertHTMLEqual() error messages for escaped HTML.
Diffstat (limited to 'tests/test_utils')
-rw-r--r--tests/test_utils/tests.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/test_utils/tests.py b/tests/test_utils/tests.py
index ce328cd90a..9c003e5a6f 100644
--- a/tests/test_utils/tests.py
+++ b/tests/test_utils/tests.py
@@ -868,6 +868,11 @@ class HTMLEqualTests(SimpleTestCase):
dom2 = parse_html('<a><b/><b/></a><b/><b/>')
self.assertEqual(dom2.count(dom1), 2)
+ def test_root_element_escaped_html(self):
+ html = '&lt;br&gt;'
+ parsed = parse_html(html)
+ self.assertEqual(str(parsed), html)
+
def test_parsing_errors(self):
with self.assertRaises(AssertionError):
self.assertHTMLEqual('<p>', '')
@@ -882,6 +887,17 @@ class HTMLEqualTests(SimpleTestCase):
with self.assertRaises(HTMLParseError):
parse_html('</p>')
+ def test_escaped_html_errors(self):
+ msg = (
+ '<p>\n<foo>\n</p>'
+ ' != '
+ '<p>\n&lt;foo&gt;\n</p>\n'
+ )
+ with self.assertRaisesMessage(AssertionError, msg):
+ self.assertHTMLEqual('<p><foo></p>', '<p>&lt;foo&gt;</p>')
+ with self.assertRaisesMessage(AssertionError, msg):
+ self.assertHTMLEqual('<p><foo></p>', '<p>&#60;foo&#62;</p>')
+
def test_contains_html(self):
response = HttpResponse('''<body>
This is a form: <form method="get">