コード例 #1
0
    def __init__(self):
        log.info("Init Shell..")
        self._engine = ZMQEventEngine('Shell')
        self._engine.start()
        self.gate = EventRPCClient('Shell', self._engine,
                                   WindowGate.SERVER_FOR_SHELL)

        self._backend = EventRPCClient('test_shell', self._engine,
                                       Backend.SERVER_FOR_SHELL)
コード例 #2
0
 def test_call():
     ee = QueueEventEngine()
     client = EventRPCClient(ee, 'test')
     server = EventRPCServer(ee, 'test')
     server.register("server_print_hello", server_print_hello)
     ee.start()
     client.call("server_print_hello", {'msg': 'parral_client'},
                 client_print_hello)
     return ee
コード例 #3
0
 def __init__(self, widget):
     log.info("Init WindowGate..")
     self._engine = ZMQEventEngine('WindowGate')
     self._engine.start()
     self._backend = EventRPCClient('WindowGate', self._engine, Backend.SERVER_FOR_UI)
     self._shell_srv = EventRPCServer(self._engine, self.SERVER_FOR_SHELL)
     self._register_functions(self._shell_srv)
     self._period = None
     self._contract = None
     self._widget = widget
コード例 #4
0
class TestBackend(unittest.TestCase):

    ui = EventRPCClient('test_ui', backend._engine, backend.SERVER_FOR_UI)
    shell = EventRPCClient('test_shell', backend._engine,
                           backend.SERVER_FOR_SHELL)

    def test_get_all_contracts(self):
        ret = self.ui.sync_call("get_all_contracts")
        ret = self.shell.sync_call("get_all_contracts")
        print "***********"
        print ret
        print "***********"

    def test_get_pcontract(self):
        ret = self.ui.sync_call("get_pcontract",
                                {'str_pcontract': 'BB.TEST-1.MINUTE'})
        ret = self.shell.sync_call("get_pcontract",
                                   {'str_pcontract': 'BB.TEST-1.MINUTE'})
        print json.loads(ret).keys()
        return
コード例 #5
0
 def test_sync_call(timeout):
     ee = QueueEventEngine()
     client = EventRPCClient(ee, 'test')
     server = EventRPCServer(ee, 'test')
     server.register("server_print_hello", server_print_hello)
     ee.start()
     six.print_(
         client.sync_call("server_print_hello", {'msg': 'sync_client'},
                          timeout), "**")
     ee.stop()
     return
コード例 #6
0
from timeit import timeit

from quantdigger.util import gen_log as log
from quantdigger.util import project_dir
from quantdigger.event.rpc import EventRPCClient
from quantdigger.event.eventengine import ZMQEventEngine
from quantdigger.interaction.backend import Backend

backend_path = os.path.join(project_dir, "quantdigger", "interaction",
                            "backend.py")

log.info("启动后台..")
backend = subprocess.Popen('python %s' % backend_path, shell=True)
time.sleep(1)

engine = ZMQEventEngine('WindowGate')
engine.start()
shell = EventRPCClient('test_shell', engine, Backend.SERVER_FOR_SHELL)


def func():
    shell.sync_call("test_speed")
    return


t = timeit('func()', 'from __main__ import func', number=100)
print(t)

subprocess.Popen.kill(backend)
a = raw_input("Any key to quit quantdigger.")