Exemple #1
0
        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()
Exemple #2
0
        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)