Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 036fb15

Browse files
Issue #28314: Added tests for xml.etree.ElementTree.Element.getiterator().
1 parent 839023f commit 036fb15

1 file changed

Lines changed: 32 additions & 0 deletions

File tree

Lib/test/test_xml_etree.py

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2191,9 +2191,41 @@ def test_iter_by_tag(self):
21912191
# make sure both tag=None and tag='*' return all tags
21922192
all_tags = ['document', 'house', 'room', 'room',
21932193
'shed', 'house', 'room']
2194+
self.assertEqual(summarize_list(doc.iter()), all_tags)
21942195
self.assertEqual(self._ilist(doc), all_tags)
21952196
self.assertEqual(self._ilist(doc, '*'), all_tags)
21962197

2198+
def test_getiterator(self):
2199+
doc = ET.XML('''
2200+
<document>
2201+
<house>
2202+
<room>bedroom1</room>
2203+
<room>bedroom2</room>
2204+
</house>
2205+
<shed>nothing here
2206+
</shed>
2207+
<house>
2208+
<room>bedroom8</room>
2209+
</house>
2210+
</document>''')
2211+
2212+
self.assertEqual(summarize_list(doc.getiterator('room')),
2213+
['room'] * 3)
2214+
self.assertEqual(summarize_list(doc.getiterator('house')),
2215+
['house'] * 2)
2216+
2217+
# test that getiterator also accepts 'tag' as a keyword arg
2218+
self.assertEqual(
2219+
summarize_list(doc.getiterator(tag='room')),
2220+
['room'] * 3)
2221+
2222+
# make sure both tag=None and tag='*' return all tags
2223+
all_tags = ['document', 'house', 'room', 'room',
2224+
'shed', 'house', 'room']
2225+
self.assertEqual(summarize_list(doc.getiterator()), all_tags)
2226+
self.assertEqual(summarize_list(doc.getiterator(None)), all_tags)
2227+
self.assertEqual(summarize_list(doc.getiterator('*')), all_tags)
2228+
21972229
def test_copy(self):
21982230
a = ET.Element('a')
21992231
it = a.iter()

0 commit comments

Comments
 (0)