| 42 | |
| 43 | |
| 44 | class ASGIRunner: |
| 45 | def __init__(self) -> None: |
| 46 | self.loop = asyncio.new_event_loop() |
| 47 | |
| 48 | def run(self, app: ASGIApp, scope: Scope, receive: Receive = unreadable_receive) -> list[Message]: |
| 49 | return self.loop.run_until_complete(run_asgi(app, scope, receive)) |
| 50 | |
| 51 | def close(self) -> None: |
| 52 | self.loop.run_until_complete(self.loop.shutdown_asyncgens()) |
| 53 | self.loop.close() |
no outgoing calls