diff options
author | Christian Heimes <christian@python.org> | 2019-04-15 13:03:03 +0200 |
---|---|---|
committer | Christian Heimes <christian@python.org> | 2019-04-15 13:04:18 +0200 |
commit | 39d8e8876eb47e6326b8a56dc28bcde62b457b9c (patch) | |
tree | 285009c6c051f4ef8489fa412074191f1018abf7 /tests.py | |
parent | efb01586d912f3fd7e16098c8768a147ce21bb96 (diff) | |
download | defusedxml-git-39d8e8876eb47e6326b8a56dc28bcde62b457b9c.tar.gz |
Test more minidom
Diffstat (limited to 'tests.py')
-rw-r--r-- | tests.py | 18 |
1 files changed, 17 insertions, 1 deletions
@@ -10,7 +10,7 @@ from xml.sax.saxutils import XMLGenerator from xml.sax import SAXParseException from pyexpat import ExpatError -from defusedxml import cElementTree, ElementTree, minidom, pulldom, sax, xmlrpc +from defusedxml import cElementTree, ElementTree, minidom, pulldom, sax, xmlrpc, expatreader from defusedxml import defuse_stdlib from defusedxml import ( DTDForbidden, @@ -225,6 +225,21 @@ class TestDefusedMinidom(BaseTests): return doc.toxml() +class TestDefusedMinidomWithParser(TestDefusedMinidom): + cyclic_error = SAXParseException + dtd_external_ref = True + + def parse(self, xmlfile, **kwargs): + doc = self.module.parse(xmlfile, parser=expatreader.create_parser(**kwargs), **kwargs) + return doc.toxml() + + def parseString(self, xmlstring, **kwargs): + doc = self.module.parseString( + xmlstring, parser=expatreader.create_parser(**kwargs), **kwargs + ) + return doc.toxml() + + class TestDefusedPulldom(BaseTests): module = pulldom @@ -508,6 +523,7 @@ def test_main(): suite.addTests(unittest.makeSuite(TestDefusedcElementTree)) suite.addTests(unittest.makeSuite(TestDefusedElementTree)) suite.addTests(unittest.makeSuite(TestDefusedMinidom)) + suite.addTests(unittest.makeSuite(TestDefusedMinidomWithParser)) suite.addTests(unittest.makeSuite(TestDefusedPulldom)) suite.addTests(unittest.makeSuite(TestDefusedSax)) suite.addTests(unittest.makeSuite(TestXmlRpc)) |