summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_htmlparser.py
diff options
context:
space:
mode:
authorEzio Melotti <ezio.melotti@gmail.com>2011-10-28 10:21:09 (GMT)
committerEzio Melotti <ezio.melotti@gmail.com>2011-10-28 10:21:09 (GMT)
commitf50ffa94abe67c6ef5e615198af15f72e7cd2a9b (patch)
treed37cac5185ec2d8de23e854ff6dddd0bfb54cb49 /Lib/test/test_htmlparser.py
parent0b85cd06808cf9b865f91b3cf00796ab3f87914a (diff)
downloadcpython-f50ffa94abe67c6ef5e615198af15f72e7cd2a9b.zip
cpython-f50ffa94abe67c6ef5e615198af15f72e7cd2a9b.tar.gz
cpython-f50ffa94abe67c6ef5e615198af15f72e7cd2a9b.tar.bz2
#13273: fix a bug that prevented HTMLParser to properly detect some tags when strict=False.
Diffstat (limited to 'Lib/test/test_htmlparser.py')
-rw-r--r--Lib/test/test_htmlparser.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/Lib/test/test_htmlparser.py b/Lib/test/test_htmlparser.py
index d45e453..9664485 100644
--- a/Lib/test/test_htmlparser.py
+++ b/Lib/test/test_htmlparser.py
@@ -373,6 +373,39 @@ class HTMLParserTolerantTestCase(TestCaseBase):
[('action', 'bogus|&#()value')])],
collector = self.collector)
+ def test_issue13273(self):
+ html = ('<div style="" ><b>The <a href="some_url">rain</a> '
+ '<br /> in <span>Spain</span></b></div>')
+ expected = [
+ ('starttag', 'div', [('style', '')]),
+ ('starttag', 'b', []),
+ ('data', 'The '),
+ ('starttag', 'a', [('href', 'some_url')]),
+ ('data', 'rain'),
+ ('endtag', 'a'),
+ ('data', ' '),
+ ('startendtag', 'br', []),
+ ('data', ' in '),
+ ('starttag', 'span', []),
+ ('data', 'Spain'),
+ ('endtag', 'span'),
+ ('endtag', 'b'),
+ ('endtag', 'div')
+ ]
+ self._run_check(html, expected, collector=self.collector)
+
+ def test_issue13273_2(self):
+ html = '<div style="", foo = "bar" ><b>The <a href="some_url">rain</a>'
+ expected = [
+ ('starttag', 'div', [('style', ''), ('foo', 'bar')]),
+ ('starttag', 'b', []),
+ ('data', 'The '),
+ ('starttag', 'a', [('href', 'some_url')]),
+ ('data', 'rain'),
+ ('endtag', 'a'),
+ ]
+ self._run_check(html, expected, collector=self.collector)
+
def test_unescape_function(self):
p = html.parser.HTMLParser()
self.assertEqual(p.unescape('&#bad;'),'&#bad;')