diff options
author | Ezio Melotti <ezio.melotti@gmail.com> | 2015-09-06 18:38:06 (GMT) |
---|---|---|
committer | Ezio Melotti <ezio.melotti@gmail.com> | 2015-09-06 18:38:06 (GMT) |
commit | 6f2bb98966853edcf1855b9dd310529d071241a2 (patch) | |
tree | 088d7d3cdd103b5b01a6d9c081ec3b40fcd110bd /Lib/test/test_htmlparser.py | |
parent | 527ef0792f79fda93f568830bba396b22fbcec6a (diff) | |
download | cpython-6f2bb98966853edcf1855b9dd310529d071241a2.zip cpython-6f2bb98966853edcf1855b9dd310529d071241a2.tar.gz cpython-6f2bb98966853edcf1855b9dd310529d071241a2.tar.bz2 |
#23144: Make sure that HTMLParser.feed() returns all the data, even when convert_charrefs is True.
Diffstat (limited to 'Lib/test/test_htmlparser.py')
-rw-r--r-- | Lib/test/test_htmlparser.py | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/Lib/test/test_htmlparser.py b/Lib/test/test_htmlparser.py index 2d771a2..144f820 100644 --- a/Lib/test/test_htmlparser.py +++ b/Lib/test/test_htmlparser.py @@ -72,9 +72,6 @@ class EventCollectorExtra(EventCollector): class EventCollectorCharrefs(EventCollector): - def get_events(self): - return self.events - def handle_charref(self, data): self.fail('This should never be called with convert_charrefs=True') @@ -685,6 +682,18 @@ class HTMLParserTolerantTestCase(HTMLParserStrictTestCase): ] self._run_check(html, expected) + def test_convert_charrefs_dropped_text(self): + # #23144: make sure that all the events are triggered when + # convert_charrefs is True, even if we don't call .close() + parser = EventCollector(convert_charrefs=True) + # before the fix, bar & baz was missing + parser.feed("foo <a>link</a> bar & baz") + self.assertEqual( + parser.get_events(), + [('data', 'foo '), ('starttag', 'a', []), ('data', 'link'), + ('endtag', 'a'), ('data', ' bar & baz')] + ) + class AttributesStrictTestCase(TestCaseBase): |