(original) (raw)
changeset: 104695:ca1b91829edf branch: 3.5 parent: 104692:74569ecd67e4 user: Serhiy Storchaka storchaka@gmail.com date: Tue Oct 25 10:37:01 2016 +0300 files: Lib/test/test_xml_etree.py description: Issue #28314: Added tests for xml.etree.ElementTree.Element.getiterator(). diff -r 74569ecd67e4 -r ca1b91829edf Lib/test/test_xml_etree.py --- a/Lib/test/test_xml_etree.py Tue Oct 25 10:13:43 2016 +0300 +++ b/Lib/test/test_xml_etree.py Tue Oct 25 10:37:01 2016 +0300 @@ -2191,9 +2191,41 @@ # 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(''' + + + bedroom1+ bedroom2+ + nothing here + + + bedroom8+ + ''') + + 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() /storchaka@gmail.com