python-2.5.2/win32/Lib/test/test_xmllib.py
changeset 0 ae805ac0140d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/python-2.5.2/win32/Lib/test/test_xmllib.py	Fri Apr 03 17:19:34 2009 +0100
@@ -0,0 +1,51 @@
+'''Test module to thest the xmllib module.
+   Sjoerd Mullender
+'''
+
+testdoc = """\
+<?xml version="1.0" encoding="UTF-8" standalone='yes' ?>
+<!-- comments aren't allowed before the <?xml?> tag,
+     but they are allowed before the <!DOCTYPE> tag -->
+<?processing instructions are allowed in the same places as comments ?>
+<!DOCTYPE greeting [
+  <!ELEMENT greeting (#PCDATA)>
+]>
+<greeting>Hello, world!</greeting>
+"""
+
+nsdoc = "<foo xmlns='URI' attr='val'/>"
+
+import warnings
+warnings.filterwarnings("ignore", ".* xmllib .* obsolete.*",
+                        DeprecationWarning, r'xmllib$')
+
+from test import test_support
+import unittest
+import xmllib
+
+class XMLParserTestCase(unittest.TestCase):
+
+    def test_simple(self):
+        parser = xmllib.XMLParser()
+        for c in testdoc:
+            parser.feed(c)
+        parser.close()
+
+    def test_default_namespace(self):
+        class H(xmllib.XMLParser):
+            def unknown_starttag(self, name, attr):
+                self.name, self.attr = name, attr
+        h=H()
+        h.feed(nsdoc)
+        h.close()
+        # The default namespace applies to elements...
+        self.assertEquals(h.name, "URI foo")
+        # but not to attributes
+        self.assertEquals(h.attr, {'attr':'val'})
+
+
+def test_main():
+    test_support.run_unittest(XMLParserTestCase)
+
+if __name__ == "__main__":
+    test_main()