Commit 863a0c3f authored by Benjamin Peterson's avatar Benjamin Peterson

add tests for xml.pulldom #9373

Thanks to Mark Smith for the patch.
parent 8eda5f7c
...@@ -4,9 +4,7 @@ import pickle ...@@ -4,9 +4,7 @@ import pickle
from test.support import verbose, run_unittest, findfile from test.support import verbose, run_unittest, findfile
import unittest import unittest
import xml.dom
import xml.dom.minidom import xml.dom.minidom
import xml.parsers.expat
from xml.dom.minidom import parse, Node, Document, parseString from xml.dom.minidom import parse, Node, Document, parseString
from xml.dom.minidom import getDOMImplementation from xml.dom.minidom import getDOMImplementation
...@@ -14,7 +12,6 @@ from xml.dom.minidom import getDOMImplementation ...@@ -14,7 +12,6 @@ from xml.dom.minidom import getDOMImplementation
tstfile = findfile("test.xml", subdir="xmltestdata") tstfile = findfile("test.xml", subdir="xmltestdata")
# The tests of DocumentType importing use these helpers to construct # The tests of DocumentType importing use these helpers to construct
# the documents to work with, since not all DOM builders actually # the documents to work with, since not all DOM builders actually
# create the DocumentType nodes. # create the DocumentType nodes.
...@@ -1009,41 +1006,6 @@ class MinidomTest(unittest.TestCase): ...@@ -1009,41 +1006,6 @@ class MinidomTest(unittest.TestCase):
"test NodeList.item()") "test NodeList.item()")
doc.unlink() doc.unlink()
def testSAX2DOM(self):
from xml.dom import pulldom
sax2dom = pulldom.SAX2DOM()
sax2dom.startDocument()
sax2dom.startElement("doc", {})
sax2dom.characters("text")
sax2dom.startElement("subelm", {})
sax2dom.characters("text")
sax2dom.endElement("subelm")
sax2dom.characters("text")
sax2dom.endElement("doc")
sax2dom.endDocument()
doc = sax2dom.document
root = doc.documentElement
(text1, elm1, text2) = root.childNodes
text3 = elm1.childNodes[0]
self.confirm(text1.previousSibling is None and
text1.nextSibling is elm1 and
elm1.previousSibling is text1 and
elm1.nextSibling is text2 and
text2.previousSibling is elm1 and
text2.nextSibling is None and
text3.previousSibling is None and
text3.nextSibling is None, "testSAX2DOM - siblings")
self.confirm(root.parentNode is doc and
text1.parentNode is root and
elm1.parentNode is root and
text2.parentNode is root and
text3.parentNode is elm1, "testSAX2DOM - parents")
doc.unlink()
def testEncodings(self): def testEncodings(self):
doc = parseString('<foo>&#x20ac;</foo>') doc = parseString('<foo>&#x20ac;</foo>')
self.assertEqual(doc.toxml(), self.assertEqual(doc.toxml(),
...@@ -1490,6 +1452,7 @@ class MinidomTest(unittest.TestCase): ...@@ -1490,6 +1452,7 @@ class MinidomTest(unittest.TestCase):
doc.appendChild(doc.createComment("foo--bar")) doc.appendChild(doc.createComment("foo--bar"))
self.assertRaises(ValueError, doc.toxml) self.assertRaises(ValueError, doc.toxml)
def testEmptyXMLNSValue(self): def testEmptyXMLNSValue(self):
doc = parseString("<element xmlns=''>\n" doc = parseString("<element xmlns=''>\n"
"<foo/>\n</element>") "<foo/>\n</element>")
......
This diff is collapsed.
...@@ -796,6 +796,7 @@ Kragen Sitaker ...@@ -796,6 +796,7 @@ Kragen Sitaker
Eric V. Smith Eric V. Smith
Christopher Smith Christopher Smith
Gregory P. Smith Gregory P. Smith
Mark Smith
Rafal Smotrzyk Rafal Smotrzyk
Dirk Soede Dirk Soede
Paul Sokolovsky Paul Sokolovsky
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment