def testServer(self): _c.init() completion_queue = _c.CompletionQueue() server = _c.Server(completion_queue) server.add_http2_addr('[::]:0') server.start() server.stop() completion_queue.stop() del server del completion_queue service_tag = object() completion_queue = _c.CompletionQueue() server = _c.Server(completion_queue) server.add_http2_addr('[::]:0') server.start() server.service(service_tag) server.stop() completion_queue.stop() event = completion_queue.get(time.time() + _TIMEOUT) self.assertIs(event.kind, _datatypes.Event.Kind.SERVICE_ACCEPTED) self.assertIs(event.tag, service_tag) self.assertIsNone(event.service_acceptance) for _ in range(_IDEMPOTENCE_DEMONSTRATION): event = completion_queue.get(time.time() + _TIMEOUT) self.assertIs(event.kind, _datatypes.Event.Kind.STOP) del server del completion_queue completion_queue = _c.CompletionQueue() server = _c.Server(completion_queue) server.add_http2_addr('[::]:0') server.start() thread = threading.Thread(target=completion_queue.get, args=(_FUTURE, )) thread.start() time.sleep(1) server.stop() completion_queue.stop() for _ in range(_IDEMPOTENCE_DEMONSTRATION): event = completion_queue.get(time.time() + _TIMEOUT) self.assertIs(event.kind, _datatypes.Event.Kind.STOP) thread.join() del server del completion_queue _c.shut_down()
def testCall(self): method = 'test method' host = 'test host' _c.init() channel = _c.Channel('%s:%d' % (host, 12345), None) completion_queue = _c.CompletionQueue() call = _c.Call(channel, completion_queue, method, host, time.time() + _TIMEOUT) del call del completion_queue del channel _c.shut_down()
def testCompletionQueue(self): _c.init() completion_queue = _c.CompletionQueue() event = completion_queue.get(0) self.assertIsNone(event) event = completion_queue.get(time.time()) self.assertIsNone(event) event = completion_queue.get(time.time() + _TIMEOUT) self.assertIsNone(event) completion_queue.stop() for _ in range(_IDEMPOTENCE_DEMONSTRATION): event = completion_queue.get(time.time() + _TIMEOUT) self.assertIs(event.kind, _datatypes.Event.Kind.STOP) del completion_queue del event _c.shut_down()
def test_secure_server(self): _c.init() server_credentials = _c.ServerCredentials( 'root certificate', (('private key', 'certificate chain'),)) completion_queue = _c.CompletionQueue() server = _c.Server(completion_queue, server_credentials) server.add_http2_addr('[::]:0') server.start() thread = threading.Thread(target=completion_queue.get, args=(_FUTURE,)) thread.start() time.sleep(1) server.stop() completion_queue.stop() for _ in range(_IDEMPOTENCE_DEMONSTRATION): event = completion_queue.get(time.time() + _TIMEOUT) self.assertIs(event.kind, _datatypes.Event.Kind.STOP) thread.join() del server del completion_queue _c.shut_down()
def testServerUpDown(self): completion_queue = _c.CompletionQueue() serv = _c.Server(completion_queue, []) del serv del completion_queue
def testCompletionQueueUpDown(self): completion_queue = _c.CompletionQueue() del completion_queue
def __init__(self): self.completion_queue = _c.CompletionQueue()