1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
#!/usr/bin/env python
from circuits import Component
from circuits.web import Controller, JSONRPC
from .jsonrpclib import ServerProxy
from .helpers import urlopen
class App(Component):
def eval(self, s):
return eval(s)
class Root(Controller):
def index(self):
return "Hello World!"
def test(webapp):
rpc = JSONRPC("/rpc")
test = App()
rpc.register(webapp)
test.register(webapp)
f = urlopen(webapp.server.http.base)
s = f.read()
assert s == b"Hello World!"
url = "%s/rpc" % webapp.server.http.base
jsonrpc = ServerProxy(url, allow_none=True, encoding='utf-8')
data = jsonrpc.eval("1 + 2")
assert data["result"] == 3
rpc.unregister()
test.unregister()
|