summaryrefslogtreecommitdiff
path: root/Lib/test/test_pyexpat.py
diff options
context:
space:
mode:
authorFred Drake <fdrake@acm.org>2001-04-25 16:03:54 +0000
committerFred Drake <fdrake@acm.org>2001-04-25 16:03:54 +0000
commite13601a530800a64db2900f9a828f914a33f6c07 (patch)
treea1239de2c8f1375e361bb954462bddc4c45157dc /Lib/test/test_pyexpat.py
parent947f465bf0454f15050ee2664a3dcc6e32a23d44 (diff)
downloadcpython-e13601a530800a64db2900f9a828f914a33f6c07.tar.gz
Update test to accomodate the change to the namespace_separator parameter
of ParserCreate(). Added assignment tests for the ordered_attributes and specified_attributes values, similar to the checks for the returns_unicode attribute.
Diffstat (limited to 'Lib/test/test_pyexpat.py')
-rw-r--r--Lib/test/test_pyexpat.py30
1 files changed, 23 insertions, 7 deletions
diff --git a/Lib/test/test_pyexpat.py b/Lib/test/test_pyexpat.py
index 0c400b4d6d..fecb27ea81 100644
--- a/Lib/test/test_pyexpat.py
+++ b/Lib/test/test_pyexpat.py
@@ -75,6 +75,18 @@ parser.returns_unicode = 1; confirm(parser.returns_unicode == 1)
parser.returns_unicode = 2; confirm(parser.returns_unicode == 1)
parser.returns_unicode = 0; confirm(parser.returns_unicode == 0)
+# Test getting/setting ordered_attributes
+parser.ordered_attributes = 0; confirm(parser.ordered_attributes == 0)
+parser.ordered_attributes = 1; confirm(parser.ordered_attributes == 1)
+parser.ordered_attributes = 2; confirm(parser.ordered_attributes == 1)
+parser.ordered_attributes = 0; confirm(parser.ordered_attributes == 0)
+
+# Test getting/setting specified_attributes
+parser.specified_attributes = 0; confirm(parser.specified_attributes == 0)
+parser.specified_attributes = 1; confirm(parser.specified_attributes == 1)
+parser.specified_attributes = 2; confirm(parser.specified_attributes == 1)
+parser.specified_attributes = 0; confirm(parser.specified_attributes == 0)
+
HANDLER_NAMES = [
'StartElementHandler', 'EndElementHandler',
'CharacterDataHandler', 'ProcessingInstructionHandler',
@@ -167,6 +179,7 @@ except TypeError, e:
print e
else:
print "Failed to catch expected TypeError."
+
try:
expat.ParserCreate(namespace_separator='too long')
except ValueError, e:
@@ -174,10 +187,13 @@ except ValueError, e:
print e
else:
print "Failed to catch expected ValueError."
-try:
- expat.ParserCreate(namespace_separator='') # too short
-except ValueError, e:
- print "Caught expected ValueError:"
- print e
-else:
- print "Failed to catch expected ValueError."
+
+# ParserCreate() needs to accept a namespace_separator of zero length
+# to satisfy the requirements of RDF applications that are required
+# to simply glue together the namespace URI and the localname. Though
+# considered a wart of the RDF specifications, it needs to be supported.
+#
+# See XML-SIG mailing list thread starting with
+# http://mail.python.org/pipermail/xml-sig/2001-April/005202.html
+#
+expat.ParserCreate(namespace_separator='') # too short