def client(): """ init Etcd3Client, close its connection-pool when teardown """ _, p, _ = docker_run_etcd_main() c = Client(host, p, protocol) yield c c.close()
async def aio_client(event_loop, request): """ init Etcd3Client, close its connection-pool when teardown """ _, p, _ = docker_run_etcd_main() c = AioClient(host, p, protocol) def teardown(): async def _t(): await c.close() event_loop.run_until_complete(_t()) event_loop._close() request.addfinalizer(teardown) return c