def _test_msg_id(): c_levels = (1, 5, 10, 50) q_sizes = (None, 1, 5, 10, 50) for c, q in itertools.product(c_levels, q_sizes): try: sp, client = fork_service(MyService, concurrency=c, queue_size=q) ok_(type(client) is IPCRPCClient) eq_(client._msg_id, 0) client.call('sum', 1, 2) eq_(client._msg_id, 1) client.call_async('sum', 5, 6) eq_(client._msg_id, 2) def _cb(value): pass client.call_callback(_cb, 'sum', 8, 9) eq_(client._msg_id, 3) except: logging.exception('error') raise finally: client.close() sp.join()
def _test_fork_and_internal_pid(): c_levels = (1, 2) q_sizes = (None, 1, 5) for c, q in itertools.product(c_levels, q_sizes): ipid = gipcrpc.context._internal_pid ok_(0 < ipid) try: sp, client = fork_service(MyService) for i in xrange(10): a = i * 2 + 7 b = i * 3 + 5 expected = a + b result = client.call('sum', a, b) eq_(result, expected) finally: client.close() sp.join() ipid2 = gipcrpc.context._internal_pid eq_(ipid2, ipid + 1)