diff options
author | Lars Gustäbel <lars@gustaebel.de> | 2000-10-24 15:35:07 +0000 |
---|---|---|
committer | Lars Gustäbel <lars@gustaebel.de> | 2000-10-24 15:35:07 +0000 |
commit | 5c06930a9a16b0c2852afddfdb02d24830bdf050 (patch) | |
tree | 2c4c37ac5e046d79b7bbcfac75eaaa41c8db67bd /Lib/test/test_sax.py | |
parent | 119855027d23755b89c43a5f0529e9ee466cc54f (diff) | |
download | cpython-5c06930a9a16b0c2852afddfdb02d24830bdf050.tar.gz |
Added some more tests here and there.
Diffstat (limited to 'Lib/test/test_sax.py')
-rw-r--r-- | Lib/test/test_sax.py | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/Lib/test/test_sax.py b/Lib/test/test_sax.py index 26fd87344e..59e14c5ef3 100644 --- a/Lib/test/test_sax.py +++ b/Lib/test/test_sax.py @@ -29,6 +29,29 @@ def confirm(outcome, name): print "Failed", name fails = fails + 1 +def test_make_parser2(): + try: + # Creating parsers several times in a row should succeed. + # Testing this because there have been failures of this kind + # before. + from xml.sax import make_parser + p = make_parser() + from xml.sax import make_parser + p = make_parser() + from xml.sax import make_parser + p = make_parser() + from xml.sax import make_parser + p = make_parser() + from xml.sax import make_parser + p = make_parser() + from xml.sax import make_parser + p = make_parser() + except: + return 0 + else: + return p + + # =========================================================================== # # saxutils tests @@ -313,6 +336,67 @@ def test_expat_inpsource_stream(): return result.getvalue() == xml_test_out +# ===== IncrementalParser support + +def test_expat_incremental(): + result = StringIO() + xmlgen = XMLGenerator(result) + parser = create_parser() + parser.setContentHandler(xmlgen) + + parser.feed("<doc>") + parser.feed("</doc>") + parser.close() + + return result.getvalue() == start + "<doc></doc>" + +def test_expat_incremental_reset(): + result = StringIO() + xmlgen = XMLGenerator(result) + parser = create_parser() + parser.setContentHandler(xmlgen) + + parser.feed("<doc>") + parser.feed("text") + + result = StringIO() + xmlgen = XMLGenerator(result) + parser.setContentHandler(xmlgen) + parser.reset() + + parser.feed("<doc>") + parser.feed("text") + parser.feed("</doc>") + parser.close() + + return result.getvalue() == start + "<doc>text</doc>" + +# ===== Locator support + +def test_expat_locator_noinfo(): + result = StringIO() + xmlgen = XMLGenerator(result) + parser = create_parser() + parser.setContentHandler(xmlgen) + + parser.feed("<doc>") + parser.feed("</doc>") + parser.close() + + return parser.getSystemId() == None and \ + parser.getPublicId() == None and \ + parser.getLineNumber() == 1 + +def test_expat_locator_withinfo(): + result = StringIO() + xmlgen = XMLGenerator(result) + parser = create_parser() + parser.setContentHandler(xmlgen) + parser.parse(findfile("test.xml")) + + return parser.getSystemId() == findfile("test.xml") and \ + parser.getPublicId() == None + # =========================================================================== # |