SimpleTestCase.assertHTMLEqual(html1, html2, msg=None)
[source]
Asserts that the strings html1
and html2
are equal. The comparison is based on HTML semantics. The comparison takes following things into account:
- Whitespace before and after HTML tags is ignored.
- All types of whitespace are considered equivalent.
- All open tags are closed implicitly, e.g. when a surrounding tag is closed or the HTML document ends.
- Empty tags are equivalent to their self-closing version.
- The ordering of attributes of an HTML element is not significant.
- Attributes without an argument are equal to attributes that equal in name and value (see the examples).
The following examples are valid tests and don’t raise any AssertionError
:
self.assertHTMLEqual( '<p>Hello <b>world!</p>', '''<p> Hello <b>world! <b/> </p>''' ) self.assertHTMLEqual( '<input type="checkbox" checked="checked" id="id_accept_terms" />', '<input id="id_accept_terms" type="checkbox" checked>' )
html1
and html2
must be valid HTML. An AssertionError
will be raised if one of them cannot be parsed.
Output in case of error can be customized with the msg
argument.
Please login to continue.