[Python-checkins] cpython (3.5): Issue #28314: Added tests for xml.etree.ElementTree.Element.getiterator().

serhiy.storchaka python-checkins at python.org
Tue Oct 25 03:38:24 EDT 2016


https://hg.python.org/cpython/rev/ca1b91829edf
changeset:   104695:ca1b91829edf
branch:      3.5
parent:      104692:74569ecd67e4
user:        Serhiy Storchaka <storchaka at gmail.com>
date:        Tue Oct 25 10:37:01 2016 +0300
summary:
  Issue #28314: Added tests for xml.etree.ElementTree.Element.getiterator().

files:
  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
--- a/Lib/test/test_xml_etree.py
+++ b/Lib/test/test_xml_etree.py
@@ -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('''
+            <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()

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list