1.1 --- a/tests/soap_test.py Sat Oct 06 19:33:22 2007 +0000
1.2 +++ b/tests/soap_test.py Sat Oct 06 19:33:47 2007 +0000
1.3 @@ -31,19 +31,19 @@
1.4
1.5 req = libxml2dom.soap.parseString(request)
1.6 assert req.method.methodName == "chargeReservation"
1.7 -assert req.method.parameterValues == [
1.8 - (("http://travelcompany.example.org/reservation", "m:reservation"), [
1.9 - (("http://travelcompany.example.org/reservation", "m:code"), "FT35ZBQ")
1.10 +assert req.method.rawParameterValues == [
1.11 + (("http://travelcompany.example.org/reservation", "reservation"), [
1.12 + (("http://travelcompany.example.org/reservation", "code"), "FT35ZBQ")
1.13 ]),
1.14 - (("http://mycompany.example.com/financial", "o:creditCard"), [
1.15 - (("http://mycompany.example.com/employees", "n:name"), u"Åke Jógvan Øyvind"),
1.16 - (("http://mycompany.example.com/financial", "o:number"), "123456789099999"),
1.17 - (("http://mycompany.example.com/financial", "o:expiration"), "2005-02")
1.18 + (("http://mycompany.example.com/financial", "creditCard"), [
1.19 + (("http://mycompany.example.com/employees", "name"), u"Åke Jógvan Øyvind"),
1.20 + (("http://mycompany.example.com/financial", "number"), "123456789099999"),
1.21 + (("http://mycompany.example.com/financial", "expiration"), "2005-02")
1.22 ])
1.23 ]
1.24 assert req.fault is None
1.25 print "Method name:", req.method.methodName
1.26 -print "Parameter values:", req.method.parameterValues
1.27 +print "Parameter values:", req.method.rawParameterValues
1.28 print "Fault:", req.fault
1.29
1.30 response = """<?xml version='1.0' encoding='iso-8859-1'?>
1.31 @@ -68,13 +68,13 @@
1.32
1.33 resp = libxml2dom.soap.parseString(response)
1.34 assert resp.method.methodName == "chargeReservationResponse"
1.35 -assert resp.method.parameterValues == [
1.36 - (("http://travelcompany.example.org/", "m:code"), "FT35ZBQ"),
1.37 - (("http://travelcompany.example.org/", "m:viewAt"), "http://travelcompany.example.org/reservations?code=FT35ZBQ")
1.38 +assert resp.method.rawParameterValues == [
1.39 + (("http://travelcompany.example.org/", "code"), "FT35ZBQ"),
1.40 + (("http://travelcompany.example.org/", "viewAt"), "http://travelcompany.example.org/reservations?code=FT35ZBQ")
1.41 ]
1.42 assert resp.fault is None
1.43 print "Method name:", resp.method.methodName
1.44 -print "Parameter values:", resp.method.parameterValues
1.45 +print "Parameter values:", resp.method.rawParameterValues
1.46 print "Fault:", resp.fault
1.47
1.48 response2 = """<?xml version='1.0' encoding='iso-8859-1'?>
1.49 @@ -102,15 +102,15 @@
1.50
1.51 resp2 = libxml2dom.soap.parseString(response2)
1.52 assert resp2.method.methodName == "chargeReservationResponse"
1.53 -assert resp2.method.parameterValues == [
1.54 - (("http://www.w3.org/2003/05/soap-rpc", "rpc:result"), "m:status"),
1.55 - (("http://travelcompany.example.org/", "m:status"), "confirmed"),
1.56 - (("http://travelcompany.example.org/", "m:code"), "FT35ZBQ"),
1.57 - (("http://travelcompany.example.org/", "m:viewAt"), "http://travelcompany.example.org/reservations?code=FT35ZBQ")
1.58 +assert resp2.method.rawParameterValues == [
1.59 + (("http://www.w3.org/2003/05/soap-rpc", "result"), "m:status"),
1.60 + (("http://travelcompany.example.org/", "status"), "confirmed"),
1.61 + (("http://travelcompany.example.org/", "code"), "FT35ZBQ"),
1.62 + (("http://travelcompany.example.org/", "viewAt"), "http://travelcompany.example.org/reservations?code=FT35ZBQ")
1.63 ]
1.64 assert resp2.fault is None
1.65 print "Method name:", resp2.method.methodName
1.66 -print "Parameter values:", resp2.method.parameterValues
1.67 +print "Parameter values:", resp2.method.rawParameterValues
1.68 print "Fault:", resp2.fault
1.69
1.70 failed = """<?xml version='1.0' encoding='iso-8859-1'?>
2.1 --- a/tests/xmlrpc_test.py Sat Oct 06 19:33:22 2007 +0000
2.2 +++ b/tests/xmlrpc_test.py Sat Oct 06 19:33:47 2007 +0000
2.3 @@ -16,10 +16,10 @@
2.4
2.5 req = libxml2dom.xmlrpc.parseString(request)
2.6 assert req.method.methodName == "examples.getStateName"
2.7 -assert req.method.parameterValues == [("i4", "41")]
2.8 +assert req.method.rawParameterValues == [(("i4", ""), "41")]
2.9 assert req.fault is None
2.10 print "Method name:", req.method.methodName
2.11 -print "Parameter values:", req.method.parameterValues
2.12 +print "Parameter values:", req.method.rawParameterValues
2.13 print "Fault:", req.fault
2.14
2.15 response = """<?xml version="1.0"?>
2.16 @@ -33,10 +33,10 @@
2.17
2.18 resp = libxml2dom.xmlrpc.parseString(response)
2.19 assert resp.method.methodName is None
2.20 -assert resp.method.parameterValues == [("string", "South Dakota")]
2.21 +assert resp.method.rawParameterValues == [(("string", ""), "South Dakota")]
2.22 assert resp.fault is None
2.23 print "Method name:", resp.method.methodName
2.24 -print "Parameter values:", resp.method.parameterValues
2.25 +print "Parameter values:", resp.method.rawParameterValues
2.26 print "Fault:", resp.fault
2.27
2.28 failed = """<?xml version="1.0"?>
2.29 @@ -59,11 +59,11 @@
2.30
2.31 f = libxml2dom.xmlrpc.parseString(failed)
2.32 assert f.method.methodName is None
2.33 -assert f.method.parameterValues == []
2.34 +assert f.method.rawParameterValues == []
2.35 assert f.fault.code == "4"
2.36 assert f.fault.reason == "Too many parameters."
2.37 print "Method name:", f.method.methodName
2.38 -print "Parameter values:", f.method.parameterValues
2.39 +print "Parameter values:", f.method.rawParameterValues
2.40 print "Fault code:", f.fault.code
2.41
2.42 # Python Package Index examples.
2.43 @@ -96,10 +96,93 @@
2.44
2.45 s = libxml2dom.xmlrpc.parseString(search)
2.46 assert s.method.methodName == "search"
2.47 -assert s.method.parameterValues == [("struct", [("name", ("string", "libxml2dom")), ("description", ("string", "XML"))]), ("string", "and")]
2.48 +assert s.method.rawParameterValues == [
2.49 + (("struct", None), [
2.50 + (("string", "name"), "libxml2dom"), (("string", "description"), "XML")
2.51 + ]),
2.52 + (("string", None), "and")
2.53 + ]
2.54 assert s.fault is None
2.55 print "Method name:", s.method.methodName
2.56 -print "Parameter values:", s.method.parameterValues
2.57 +print "Parameter values:", s.method.rawParameterValues
2.58 print "Fault:", s.fault
2.59
2.60 +# Nested structure examples.
2.61 +
2.62 +search2 = """<?xml version="1.0"?>
2.63 +<methodCall>
2.64 + <methodName>search</methodName>
2.65 + <params>
2.66 + <param>
2.67 + <value>
2.68 + <struct>
2.69 + <member>
2.70 + <name>names</name>
2.71 + <value>
2.72 + <struct>
2.73 + <member>
2.74 + <name>name</name>
2.75 + <value><string>libxml2dom</string></value>
2.76 + </member>
2.77 + <member>
2.78 + <name>description</name>
2.79 + <value>XML</value>
2.80 + </member>
2.81 + </struct>
2.82 + </value>
2.83 + </member>
2.84 + </struct>
2.85 + </value>
2.86 + </param>
2.87 + <param>
2.88 + <value>
2.89 + <string>and</string>
2.90 + </value>
2.91 + </param>
2.92 + </params>
2.93 +</methodCall>"""
2.94 +
2.95 +s2 = libxml2dom.xmlrpc.parseString(search2)
2.96 +assert s2.method.methodName == "search"
2.97 +assert s2.method.rawParameterValues == [
2.98 + (("struct", None), [
2.99 + (("struct", "names"), [(("string", "name"), "libxml2dom"), (("string", "description"), "XML")])
2.100 + ]),
2.101 + (("string", None), "and")
2.102 + ]
2.103 +assert s2.fault is None
2.104 +print "Method name:", s2.method.methodName
2.105 +print "Parameter values:", s2.method.rawParameterValues
2.106 +print "Fault:", s2.fault
2.107 +
2.108 +arrays = """<?xml version="1.0"?>
2.109 + <methodResponse>
2.110 + <params>
2.111 + <param>
2.112 + <value>
2.113 + <array>
2.114 + <data>
2.115 + <value>
2.116 + <string>libxml2dom</string>
2.117 + </value>
2.118 + <value>
2.119 + <string>XSLTools</string>
2.120 + </value>
2.121 + </data>
2.122 + </array>
2.123 + </value>
2.124 + </param>
2.125 + </params>
2.126 + </methodResponse>"""
2.127 +
2.128 +a = libxml2dom.xmlrpc.parseString(arrays)
2.129 +assert a.method.methodName is None
2.130 +assert a.method.rawParameterValues == [
2.131 + (("array", None), [(("string", None), "libxml2dom"), (("string", None), "XSLTools")])
2.132 + ]
2.133 +assert a.fault is None
2.134 +print "Method name:", a.method.methodName
2.135 +print "Parameter values:", a.method.rawParameterValues
2.136 +print "Fault:", a.fault
2.137 +
2.138 # vim: tabstop=4 expandtab shiftwidth=4