summaryrefslogtreecommitdiff
path: root/vendor/CherryPy-3.2.0/py3/cherrypy/test/test_xmlrpc.py
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/CherryPy-3.2.0/py3/cherrypy/test/test_xmlrpc.py')
-rw-r--r--vendor/CherryPy-3.2.0/py3/cherrypy/test/test_xmlrpc.py142
1 files changed, 0 insertions, 142 deletions
diff --git a/vendor/CherryPy-3.2.0/py3/cherrypy/test/test_xmlrpc.py b/vendor/CherryPy-3.2.0/py3/cherrypy/test/test_xmlrpc.py
deleted file mode 100644
index f9236cc..0000000
--- a/vendor/CherryPy-3.2.0/py3/cherrypy/test/test_xmlrpc.py
+++ /dev/null
@@ -1,142 +0,0 @@
-import sys
-from xmlrpc.client import DateTime, Fault, ServerProxy, SafeTransport as HTTPSTransport
-
-# Python 3.0's SafeTransport still mistakenly checks for socket.ssl
-import socket
-if not hasattr(socket, "ssl"):
- socket.ssl = True
-
-import cherrypy
-
-
-def setup_server():
- from cherrypy import _cptools
-
- class Root:
- def index(self):
- return "I'm a standard index!"
- index.exposed = True
-
-
- class XmlRpc(_cptools.XMLRPCController):
-
- def foo(self):
- return "Hello world!"
- foo.exposed = True
-
- def return_single_item_list(self):
- return [42]
- return_single_item_list.exposed = True
-
- def return_string(self):
- return "here is a string"
- return_string.exposed = True
-
- def return_tuple(self):
- return ('here', 'is', 1, 'tuple')
- return_tuple.exposed = True
-
- def return_dict(self):
- return dict(a=1, b=2, c=3)
- return_dict.exposed = True
-
- def return_composite(self):
- return dict(a=1,z=26), 'hi', ['welcome', 'friend']
- return_composite.exposed = True
-
- def return_int(self):
- return 42
- return_int.exposed = True
-
- def return_float(self):
- return 3.14
- return_float.exposed = True
-
- def return_datetime(self):
- return DateTime((2003, 10, 7, 8, 1, 0, 1, 280, -1))
- return_datetime.exposed = True
-
- def return_boolean(self):
- return True
- return_boolean.exposed = True
-
- def test_argument_passing(self, num):
- return num * 2
- test_argument_passing.exposed = True
-
- def test_returning_Fault(self):
- return Fault(1, "custom Fault response")
- test_returning_Fault.exposed = True
-
- root = Root()
- root.xmlrpc = XmlRpc()
- cherrypy.tree.mount(root, config={'/': {
- 'request.dispatch': cherrypy.dispatch.XMLRPCDispatcher(),
- 'tools.xmlrpc.allow_none': 0,
- }})
-
-
-from cherrypy.test import helper
-
-class XmlRpcTest(helper.CPWebCase):
- setup_server = staticmethod(setup_server)
- def testXmlRpc(self):
-
- scheme = self.scheme
- if scheme == "https":
- url = 'https://%s:%s/xmlrpc/' % (self.interface(), self.PORT)
- proxy = ServerProxy(url, transport=HTTPSTransport())
- else:
- url = 'http://%s:%s/xmlrpc/' % (self.interface(), self.PORT)
- proxy = ServerProxy(url)
-
- # begin the tests ...
- self.getPage("/xmlrpc/foo")
- self.assertBody("Hello world!")
-
- self.assertEqual(proxy.return_single_item_list(), [42])
- self.assertNotEqual(proxy.return_single_item_list(), 'one bazillion')
- self.assertEqual(proxy.return_string(), "here is a string")
- self.assertEqual(proxy.return_tuple(), list(('here', 'is', 1, 'tuple')))
- self.assertEqual(proxy.return_dict(), {'a': 1, 'c': 3, 'b': 2})
- self.assertEqual(proxy.return_composite(),
- [{'a': 1, 'z': 26}, 'hi', ['welcome', 'friend']])
- self.assertEqual(proxy.return_int(), 42)
- self.assertEqual(proxy.return_float(), 3.14)
- self.assertEqual(proxy.return_datetime(),
- DateTime((2003, 10, 7, 8, 1, 0, 1, 280, -1)))
- self.assertEqual(proxy.return_boolean(), True)
- self.assertEqual(proxy.test_argument_passing(22), 22 * 2)
-
- # Test an error in the page handler (should raise an xmlrpclib.Fault)
- try:
- proxy.test_argument_passing({})
- except Exception:
- x = sys.exc_info()[1]
- self.assertEqual(x.__class__, Fault)
- self.assertEqual(x.faultString, ("unsupported operand type(s) "
- "for *: 'dict' and 'int'"))
- else:
- self.fail("Expected xmlrpclib.Fault")
-
- # http://www.cherrypy.org/ticket/533
- # if a method is not found, an xmlrpclib.Fault should be raised
- try:
- proxy.non_method()
- except Exception:
- x = sys.exc_info()[1]
- self.assertEqual(x.__class__, Fault)
- self.assertEqual(x.faultString, 'method "non_method" is not supported')
- else:
- self.fail("Expected xmlrpclib.Fault")
-
- # Test returning a Fault from the page handler.
- try:
- proxy.test_returning_Fault()
- except Exception:
- x = sys.exc_info()[1]
- self.assertEqual(x.__class__, Fault)
- self.assertEqual(x.faultString, ("custom Fault response"))
- else:
- self.fail("Expected xmlrpclib.Fault")
-