aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorStan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>2025-04-26 21:03:48 +0100
committerGitHub <noreply@github.com>2025-04-26 23:03:48 +0300
commitee033d455577dd7af6c5421f3365eba1c9af1087 (patch)
treedde7697e7bc29298ae2fe50c5adba7c704477cb6
parent8d6d7386a35b4a6fdd7d599f2184780bb83cc306 (diff)
downloadcpython-ee033d455577dd7af6c5421f3365eba1c9af1087.tar.gz
cpython-ee033d455577dd7af6c5421f3365eba1c9af1087.zip
gh-63882: Implement some `test_minidom` tests (#132879)
Co-authored-by: Julian Gindi <julian@gindi.io> Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
-rw-r--r--Lib/test/test_minidom.py41
1 files changed, 32 insertions, 9 deletions
diff --git a/Lib/test/test_minidom.py b/Lib/test/test_minidom.py
index f717fd03ca5..6679c0a4fbe 100644
--- a/Lib/test/test_minidom.py
+++ b/Lib/test/test_minidom.py
@@ -396,13 +396,28 @@ class MinidomTest(unittest.TestCase):
dom.unlink()
def testGetAttrList(self):
- pass
+ dom = parseString("<abc/>")
+ self.addCleanup(dom.unlink)
+ el = dom.documentElement
+ el.setAttribute("spam", "jam")
+ self.assertEqual(len(el.attributes.items()), 1)
+ el.setAttribute("foo", "bar")
+ items = el.attributes.items()
+ self.assertEqual(len(items), 2)
+ self.assertIn(('spam', 'jam'), items)
+ self.assertIn(('foo', 'bar'), items)
def testGetAttrValues(self):
- pass
-
- def testGetAttrLength(self):
- pass
+ dom = parseString("<abc/>")
+ self.addCleanup(dom.unlink)
+ el = dom.documentElement
+ el.setAttribute("spam", "jam")
+ values = [x.value for x in el.attributes.values()]
+ self.assertIn("jam", values)
+ el.setAttribute("foo", "bar")
+ values = [x.value for x in el.attributes.values()]
+ self.assertIn("bar", values)
+ self.assertIn("jam", values)
def testGetAttribute(self):
dom = Document()
@@ -496,8 +511,6 @@ class MinidomTest(unittest.TestCase):
self.assertEqual(str(node), repr(node))
dom.unlink()
- def testTextNodeRepr(self): pass
-
def testWriteXML(self):
str = '<?xml version="1.0" ?><a b="c"/>'
dom = parseString(str)
@@ -601,9 +614,19 @@ class MinidomTest(unittest.TestCase):
and pi.localName is None
and pi.namespaceURI == xml.dom.EMPTY_NAMESPACE)
- def testProcessingInstructionRepr(self): pass
+ def testProcessingInstructionRepr(self):
+ dom = parseString('<e><?mypi \t\n data \t\n ?></e>')
+ pi = dom.documentElement.firstChild
+ self.assertEqual(str(pi.nodeType), repr(pi.nodeType))
- def testTextRepr(self): pass
+ def testTextRepr(self):
+ dom = Document()
+ self.addCleanup(dom.unlink)
+ elem = dom.createElement("elem")
+ elem.appendChild(dom.createTextNode("foo"))
+ el = elem.firstChild
+ self.assertEqual(str(el), repr(el))
+ self.assertEqual('<DOM Text node "\'foo\'">', str(el))
def testWriteText(self): pass