diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2016-10-25 07:37:01 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2016-10-25 07:37:01 (GMT) |
commit | 036fb15435a2b5fb8acb200ee694b1d50c87a3a9 (patch) | |
tree | fba4ce3e7b5d6df72da18de938c30f20ec945287 | |
parent | 839023f12cd589a25e7e9e2ee1ed64485ab45fd9 (diff) | |
download | cpython-036fb15435a2b5fb8acb200ee694b1d50c87a3a9.zip cpython-036fb15435a2b5fb8acb200ee694b1d50c87a3a9.tar.gz cpython-036fb15435a2b5fb8acb200ee694b1d50c87a3a9.tar.bz2 |
Issue #28314: Added tests for xml.etree.ElementTree.Element.getiterator().
-rw-r--r-- | Lib/test/test_xml_etree.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/Lib/test/test_xml_etree.py b/Lib/test/test_xml_etree.py index fbfc0b0..6c7616b 100644 --- a/Lib/test/test_xml_etree.py +++ b/Lib/test/test_xml_etree.py @@ -2191,9 +2191,41 @@ class ElementIterTest(unittest.TestCase): # make sure both tag=None and tag='*' return all tags all_tags = ['document', 'house', 'room', 'room', 'shed', 'house', 'room'] + self.assertEqual(summarize_list(doc.iter()), all_tags) self.assertEqual(self._ilist(doc), all_tags) self.assertEqual(self._ilist(doc, '*'), all_tags) + def test_getiterator(self): + doc = ET.XML(''' + <document> + <house> + <room>bedroom1</room> + <room>bedroom2</room> + </house> + <shed>nothing here + </shed> + <house> + <room>bedroom8</room> + </house> + </document>''') + + self.assertEqual(summarize_list(doc.getiterator('room')), + ['room'] * 3) + self.assertEqual(summarize_list(doc.getiterator('house')), + ['house'] * 2) + + # test that getiterator also accepts 'tag' as a keyword arg + self.assertEqual( + summarize_list(doc.getiterator(tag='room')), + ['room'] * 3) + + # make sure both tag=None and tag='*' return all tags + all_tags = ['document', 'house', 'room', 'room', + 'shed', 'house', 'room'] + self.assertEqual(summarize_list(doc.getiterator()), all_tags) + self.assertEqual(summarize_list(doc.getiterator(None)), all_tags) + self.assertEqual(summarize_list(doc.getiterator('*')), all_tags) + def test_copy(self): a = ET.Element('a') it = a.iter() |