diff options
| author | Andrei Belov <defan@nginx.com> | 2020-11-19 21:19:57 +0300 |
|---|---|---|
| committer | Andrei Belov <defan@nginx.com> | 2020-11-19 21:19:57 +0300 |
| commit | 7f9079a3cd4cdb6ac3fea53f10bd34fe8b82fe9c (patch) | |
| tree | c79dc48a3260156f3f824ecd299e5a4934d749c5 /test/python/threads | |
| parent | 646d047e5d12515ceac02279b373601ce0752982 (diff) | |
| parent | 806a9b2515c60b12a68cd97af04f7fa5cb4dffed (diff) | |
| download | unit-7f9079a3cd4cdb6ac3fea53f10bd34fe8b82fe9c.tar.gz unit-7f9079a3cd4cdb6ac3fea53f10bd34fe8b82fe9c.tar.bz2 | |
Merged with the default branch.1.21.0-1
Diffstat (limited to 'test/python/threads')
| -rw-r--r-- | test/python/threads/asgi.py | 27 | ||||
| -rw-r--r-- | test/python/threads/wsgi.py | 15 |
2 files changed, 42 insertions, 0 deletions
diff --git a/test/python/threads/asgi.py b/test/python/threads/asgi.py new file mode 100644 index 00000000..d51ae431 --- /dev/null +++ b/test/python/threads/asgi.py @@ -0,0 +1,27 @@ +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()), + ] + }) diff --git a/test/python/threads/wsgi.py b/test/python/threads/wsgi.py new file mode 100644 index 00000000..1cc8ffe2 --- /dev/null +++ b/test/python/threads/wsgi.py @@ -0,0 +1,15 @@ +import time +import threading + +def application(environ, start_response): + delay = float(environ.get('HTTP_X_DELAY', 0)) + + time.sleep(delay) + + start_response('200', [ + ('Content-Length', '0'), + ('Wsgi-Multithread', str(environ['wsgi.multithread'])), + ('X-Thread', str(threading.currentThread().ident)) + ]) + + return [] |
