[Python-3000-checkins] r53845 - in python/branches/p3yk: BROKEN Lib/test/test_minidom.py Lib/xml/dom/minidom.py

brett.cannon python-3000-checkins at python.org
Wed Feb 21 23:05:45 CET 2007


Author: brett.cannon
Date: Wed Feb 21 23:05:37 2007
New Revision: 53845

Modified:
   python/branches/p3yk/BROKEN
   python/branches/p3yk/Lib/test/test_minidom.py
   python/branches/p3yk/Lib/xml/dom/minidom.py
Log:
Fix xml.dom.minidom so it works again after the dict views introduction.

There are some methods in minidom that return dict.keys() directly.  There were
left alone since the tests passed without touching them, but it might be
prudent to just wrap them in a 'list' call to be safe for people expecting a
list.


Modified: python/branches/p3yk/BROKEN
==============================================================================
--- python/branches/p3yk/BROKEN	(original)
+++ python/branches/p3yk/BROKEN	Wed Feb 21 23:05:37 2007
@@ -1,2 +1,2 @@
     test_bsddb test_bsddb3 test_compile test_dumbdbm
-    test_importhooks test_iter test_iterlen test_minidom
+    test_importhooks test_iter test_iterlen

Modified: python/branches/p3yk/Lib/test/test_minidom.py
==============================================================================
--- python/branches/p3yk/Lib/test/test_minidom.py	(original)
+++ python/branches/p3yk/Lib/test/test_minidom.py	Wed Feb 21 23:05:37 2007
@@ -565,10 +565,8 @@
 def _testCloneElementCopiesAttributes(e1, e2, test):
     attrs1 = e1.attributes
     attrs2 = e2.attributes
-    keys1 = attrs1.keys()
-    keys2 = attrs2.keys()
-    keys1.sort()
-    keys2.sort()
+    keys1 = sorted(attrs1.keys())
+    keys2 = sorted(attrs2.keys())
     confirm(keys1 == keys2, "clone of element has same attribute keys")
     for i in range(len(keys1)):
         a1 = attrs1.item(i)
@@ -1351,8 +1349,7 @@
 
 # --- MAIN PROGRAM
 
-names = globals().keys()
-names.sort()
+names = sorted(globals().keys())
 
 failed = []
 

Modified: python/branches/p3yk/Lib/xml/dom/minidom.py
==============================================================================
--- python/branches/p3yk/Lib/xml/dom/minidom.py	(original)
+++ python/branches/p3yk/Lib/xml/dom/minidom.py	Wed Feb 21 23:05:37 2007
@@ -256,7 +256,7 @@
 
     def _call_user_data_handler(self, operation, src, dst):
         if hasattr(self, "_user_data"):
-            for key, (data, handler) in self._user_data.items():
+            for key, (data, handler) in list(self._user_data.items()):
                 if handler is not None:
                     handler.handle(operation, key, data, src, dst)
 
@@ -480,7 +480,7 @@
 
     def item(self, index):
         try:
-            return self[self._attrs.keys()[index]]
+            return self[list(self._attrs.keys())[index]]
         except IndexError:
             return None
 
@@ -672,7 +672,7 @@
         return self.tagName
 
     def unlink(self):
-        for attr in self._attrs.values():
+        for attr in list(self._attrs.values()):
             attr.unlink()
         self._attrs = None
         self._attrsNS = None
@@ -805,8 +805,7 @@
         writer.write(indent+"<" + self.tagName)
 
         attrs = self._get_attributes()
-        a_names = attrs.keys()
-        a_names.sort()
+        a_names = sorted(attrs.keys())
 
         for a_name in a_names:
             writer.write(" %s=\"" % a_name)


More information about the Python-3000-checkins mailing list