mirror of
https://github.com/python/cpython.git
synced 2025-07-07 19:35:27 +00:00
#13358: HTMLParser now calls handle_data only once for each CDATA.
This commit is contained in:
parent
8008f2aba0
commit
15cb489234
3 changed files with 26 additions and 3 deletions
|
@ -301,7 +301,27 @@ DOCTYPE html [
|
|||
("data", content),
|
||||
("endtag", element_lower)])
|
||||
|
||||
def test_cdata_with_closing_tags(self):
|
||||
# see issue #13358
|
||||
# make sure that HTMLParser calls handle_data only once for each CDATA.
|
||||
# The normal event collector normalizes the events in get_events,
|
||||
# so we override it to return the original list of events.
|
||||
class Collector(EventCollector):
|
||||
def get_events(self):
|
||||
return self.events
|
||||
|
||||
content = """<!-- not a comment --> ¬-an-entity-ref;
|
||||
<a href="" /> </p><p> <span></span></style>
|
||||
'</script' + '>'"""
|
||||
for element in [' script', 'script ', ' script ',
|
||||
'\nscript', 'script\n', '\nscript\n']:
|
||||
element_lower = element.lower().strip()
|
||||
s = '<script>{content}</{element}>'.format(element=element,
|
||||
content=content)
|
||||
self._run_check(s, [("starttag", element_lower, []),
|
||||
("data", content),
|
||||
("endtag", element_lower)],
|
||||
collector=Collector())
|
||||
|
||||
class HTMLParserTolerantTestCase(HTMLParserStrictTestCase):
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue