diff --git a/Lib/test/test_htmllib.py b/Lib/test/test_htmllib.py new file mode 100644 index 00000000000..620853d3ba5 --- /dev/null +++ b/Lib/test/test_htmllib.py @@ -0,0 +1,42 @@ +import formatter +import htmllib +import unittest + +import test_support + + +class AnchorCollector(htmllib.HTMLParser): + def __init__(self, *args, **kw): + self.__anchors = [] + htmllib.HTMLParser.__init__(self, *args, **kw) + + def get_anchor_info(self): + return self.__anchors + + def anchor_bgn(self, *args): + self.__anchors.append(args) + + +class HTMLParserTestCase(unittest.TestCase): + def test_anchor_collection(self): + # See SF bug #467059. + parser = AnchorCollector(formatter.NullFormatter(), verbose=1) + parser.feed( + """ + + + """) + parser.close() + self.assertEquals(parser.get_anchor_info(), + [('http://foo.org/', 'splat', ''), + ('http://www.python.org/', '', ''), + ('', 'frob', ''), + ]) + + +def test_main(): + test_support.run_unittest(HTMLParserTestCase) + + +if __name__ == "__main__": + test_main()