From f38458fe56bf8850da72a924bd2e8ff59c6adf06 Mon Sep 17 00:00:00 2001 From: Pratyush Mittal Date: Thu, 28 Oct 2021 23:45:01 +0530 Subject: Fixed #33236 -- Fixed assertHTMLEqual() error messages for escaped HTML. --- tests/test_utils/tests.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'tests/test_utils') 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('') self.assertEqual(dom2.count(dom1), 2) + def test_root_element_escaped_html(self): + html = '<br>' + parsed = parse_html(html) + self.assertEqual(str(parsed), html) + def test_parsing_errors(self): with self.assertRaises(AssertionError): self.assertHTMLEqual('

', '') @@ -882,6 +887,17 @@ class HTMLEqualTests(SimpleTestCase): with self.assertRaises(HTMLParseError): parse_html('

') + def test_escaped_html_errors(self): + msg = ( + '

\n\n

' + ' != ' + '

\n<foo>\n

\n' + ) + with self.assertRaisesMessage(AssertionError, msg): + self.assertHTMLEqual('

', '

<foo>

') + with self.assertRaisesMessage(AssertionError, msg): + self.assertHTMLEqual('

', '

<foo>

') + def test_contains_html(self): response = HttpResponse(''' This is a form:
-- cgit v1.3