If PyXML is installed, there is no Node.allnodes, so that portion of
authorFred Drake <fdrake@acm.org>
Thu, 12 Sep 2002 17:03:02 +0000 (17:03 +0000)
committerFred Drake <fdrake@acm.org>
Thu, 12 Sep 2002 17:03:02 +0000 (17:03 +0000)
the test should be skipped if that's the case.

Lib/test/test_minidom.py

index 9e00b4f79903d02f4283012dab0b06c7ec4ad078..0791bbfdae5d248ec9749fde8aee0142bea2e812 100644 (file)
@@ -618,22 +618,33 @@ names.sort()
 
 failed = []
 
+try:
+    Node.allnodes
+except AttributeError:
+    # We don't actually have the minidom from teh standard library,
+    # but are picking up the PyXML version from site-packages.
+    def check_allnodes():
+        pass
+else:
+    def check_allnodes():
+        confirm(len(Node.allnodes) == 0,
+                "assertion: len(Node.allnodes) == 0")
+        if len(Node.allnodes):
+            print "Garbage left over:"
+            if verbose:
+                print Node.allnodes.items()[0:10]
+            else:
+                # Don't print specific nodes if repeatable results
+                # are needed
+                print len(Node.allnodes)
+        Node.allnodes = {}
+
 for name in names:
     if name.startswith("test"):
         func = globals()[name]
         try:
             func()
-            confirm(len(Node.allnodes) == 0,
-                    "assertion: len(Node.allnodes) == 0")
-            if len(Node.allnodes):
-                print "Garbage left over:"
-                if verbose:
-                    print Node.allnodes.items()[0:10]
-                else:
-                    # Don't print specific nodes if repeatable results
-                    # are needed
-                    print len(Node.allnodes)
-            Node.allnodes = {}
+            check_allnodes()
         except:
             failed.append(name)
             print "Test Failed: ", name