Files
nginx-unit/test/python/threads/asgi.py
Andrei Zeliankou 6c97a1a069 Tests: style.
2021-04-05 14:03:05 +01:00

31 lines
638 B
Python

import asyncio
import time
import threading
async def application(scope, receive, send):
assert scope['type'] == 'http'
headers = scope.get('headers', [])
def get_header(n, v=None):
for h in headers:
if h[0] == n:
return h[1]
return v
delay = float(get_header(b'x-delay', 0))
time.sleep(delay)
await send(
{
'type': 'http.response.start',
'status': 200,
'headers': [
(b'content-length', b'0'),
(b'x-thread', str(threading.currentThread().ident).encode()),
],
}
)