本文整理汇总了Python中xmlrpclib.ServerProxy.test方法的典型用法代码示例。如果您正苦于以下问题:Python ServerProxy.test方法的具体用法?Python ServerProxy.test怎么用?Python ServerProxy.test使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xmlrpclib.ServerProxy
的用法示例。
在下文中一共展示了ServerProxy.test方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: KeyTests
# 需要导入模块: from xmlrpclib import ServerProxy [as 别名]
# 或者: from xmlrpclib.ServerProxy import test [as 别名]
class KeyTests(unittest.TestCase):
def setUp(self):
self.server = ServerProxy("http://localhost:8000", allow_none=True)
self.consultant_id = 0
self.consultant_privkey = "".join(open('./keys/consultant.pem').readlines())
self.consultant_pubkey = "".join(open('./keys/consultant.pub.pem').readlines())
self.client_privkey = "".join(open('./keys/client1.pem').readlines())
self.client_pubkey = "".join(open('./keys/client1.pub.pem').readlines())
self.client_id = 1
self.tree_id = util.digest(self.client_id)
def tearDown(self):
self.server.clear_db()
def test_conn(self):
a = 'woei'
b = 'woeiwoei'
self.assertEqual(str(a) + str(b), self.server.test(a, b))
def test_pubkey_add(self):
sig = util.sign(self.consultant_privkey, False, "add_pubkey")
#call the server
expected = "Added key for client {0}".format(self.client_id)
result = self.server.add_pubkey(b64encode(sig), self.client_id, b64encode(self.tree_id), self.client_pubkey)
self.assertEqual(expected, result)
def test_pubkey_add_twice(self):
sig = util.sign(self.consultant_privkey, False, "add_pubkey")
expected = "Tried to add key for client {0} twice!".format(self.client_id)
self.server.add_pubkey(b64encode(sig), self.client_id, b64encode(self.tree_id), self.client_pubkey)
result = self.server.add_pubkey(b64encode(sig), self.client_id, b64encode(self.tree_id), self.client_pubkey)
self.assertEqual(expected, result)
def test_pubkey_del(self):
#first add the key
sig = util.sign(self.consultant_privkey, False, "add_pubkey")
self.server.add_pubkey(b64encode(sig), self.client_id, b64encode(self.tree_id), self.client_pubkey)
#then remove it
#sig = util.sign(self.consultant_privkey, False, "del_pubkey", self.client_id, b64encode(self.tree_id))
sig = util.sign(self.consultant_privkey, False, "del_pubkey")
expected = "Removed key for client {id}".format(id=self.client_id)
result = self.server.del_pubkey(b64encode(sig), self.client_id, b64encode(self.tree_id))
self.assertEqual(expected, result)
def test_pubkey_fetch(self):
sig = util.sign(self.consultant_privkey, False, "add_pubkey")
self.server.add_pubkey(b64encode(sig), self.client_id, b64encode(self.tree_id), self.client_pubkey)
#then fetch it
#sig = util.sign(self.client_privkey, False, "fetch_pubkey", self.client_id, b64encode(self.tree_id))
sig = util.sign(self.client_privkey, False, "fetch_pubkey")
expected = self.client_pubkey
result = self.server.fetch_pubkey(b64encode(sig), self.client_id, b64encode(self.tree_id))
self.assertEqual(expected, result)
def test_clear_keys(self):
# first add the key
sig = util.sign(self.consultant_privkey, False, "add_pubkey")
self.server.add_pubkey(b64encode(sig), self.client_id, b64encode(self.tree_id), self.client_pubkey)
# then fetch it
sig = util.sign(self.client_privkey, False, "fetch_pubkey")
expected = self.client_pubkey
result = self.server.fetch_pubkey(b64encode(sig), self.client_id, b64encode(self.tree_id))
self.assertEqual(expected, result)
# then clear the keys
sig = util.sign(self.consultant_privkey, False, "clear_keys")
result = self.server.clear_keys(b64encode(sig))
self.assertTrue(result)
示例2: Proxy
# 需要导入模块: from xmlrpclib import ServerProxy [as 别名]
# 或者: from xmlrpclib.ServerProxy import test [as 别名]
class Proxy(object):
"""Wrap ServerProxy with logic and object proxies
The proxy mirrors the remote interface to provide an
as-similar experience as possible.
"""
_instance = None
def __getattr__(self, attr):
"""Any call not overloaded, simply pass it on"""
return getattr(self._proxy, attr)
def __init__(self, port, user=None, password=None):
self.cached_context = list()
self.cached_discover = list()
transport = Transport()
self._proxy = ServerProxy(
"http://{auth}127.0.0.1:{port}/pyblish".format(
port=port,
auth=("{user}:{pwd}@".format(
user=user, pwd=password)
) if user else ""),
allow_none=True,
transport=transport)
def test(self, **vars):
"""Vars can only be passed as a non-keyword argument"""
return self._proxy.test(vars)
def ping(self):
"""Convert Fault to True/False"""
try:
self._proxy.ping()
except (socket.timeout, socket.error):
return False
return True
def process(self, plugin, context, instance=None, action=None):
"""Transmit a `process` request to host
Arguments:
plugin (PluginProxy): Plug-in to process
context (ContextProxy): Filtered context
instance (InstanceProxy, optional): Instance to process
action (str, optional): Action to process
"""
plugin = plugin.to_json()
instance = instance.to_json() if instance is not None else None
return self._proxy.process(plugin, instance, action)
def repair(self, plugin, context, instance=None):
plugin = plugin.to_json()
instance = instance.to_json() if instance is not None else None
return self._proxy.repair(plugin, instance)
def context(self):
self.cached_context = ContextProxy.from_json(self._proxy.context())
return self.cached_context
def discover(self):
self.cached_discover[:] = list()
for plugin in self._proxy.discover():
self.cached_discover.append(PluginProxy.from_json(plugin))
return self.cached_discover
def emit(self, signal, **kwargs):
self._proxy.emit(signal, kwargs)
示例3: call_test
# 需要导入模块: from xmlrpclib import ServerProxy [as 别名]
# 或者: from xmlrpclib.ServerProxy import test [as 别名]
def call_test():
client = ServerProxy('http://localhost:%i'%PORT_NUMBER)
client.test()