diff options
author | Andrei Belov <defan@nginx.com> | 2020-03-12 18:40:48 +0300 |
---|---|---|
committer | Andrei Belov <defan@nginx.com> | 2020-03-12 18:40:48 +0300 |
commit | 4b7ca39903178e20ec7381205694cb01f0dec6bc (patch) | |
tree | 51afb9c7003b5927183e7ddecd766eb19e421233 /test/python | |
parent | 8414897527ed1616ea39a0cae4d1b8ee170d5cb8 (diff) | |
parent | b3c8a7b33a29208e75dfe4f670cf81dac7b99ccc (diff) | |
download | unit-4b7ca39903178e20ec7381205694cb01f0dec6bc.tar.gz unit-4b7ca39903178e20ec7381205694cb01f0dec6bc.tar.bz2 |
Merged with the default branch.1.16.0-1
Diffstat (limited to '')
-rw-r--r-- | test/python/input_iter/wsgi.py | 17 | ||||
-rw-r--r-- | test/python/input_readline/wsgi.py | 20 | ||||
-rw-r--r-- | test/python/input_readline_size/wsgi.py | 16 | ||||
-rw-r--r-- | test/python/input_readlines/wsgi.py | 5 | ||||
-rw-r--r-- | test/python/upstreams/0/wsgi.py | 8 | ||||
-rw-r--r-- | test/python/upstreams/1/wsgi.py | 8 | ||||
-rw-r--r-- | test/python/upstreams/2/wsgi.py | 8 |
7 files changed, 79 insertions, 3 deletions
diff --git a/test/python/input_iter/wsgi.py b/test/python/input_iter/wsgi.py index d3bf437f..04a6a06c 100644 --- a/test/python/input_iter/wsgi.py +++ b/test/python/input_iter/wsgi.py @@ -1,5 +1,16 @@ def application(environ, start_response): - body = bytes(environ['wsgi.input'].__iter__()) + body = [] + content_length = 0 - start_response('200', [('Content-Length', str(len(body)))]) - return [body] + for l in environ['wsgi.input'].__iter__(): + body.append(l) + content_length += len(l) + + start_response( + '200', + [ + ('Content-Length', str(content_length)), + ('X-Lines-Count', str(len(body))), + ], + ) + return body diff --git a/test/python/input_readline/wsgi.py b/test/python/input_readline/wsgi.py new file mode 100644 index 00000000..ec42e0c8 --- /dev/null +++ b/test/python/input_readline/wsgi.py @@ -0,0 +1,20 @@ +def application(environ, start_response): + body = [] + content_length = 0 + + while True: + l = environ['wsgi.input'].readline() + if not l: + break + + body.append(l) + content_length += len(l) + + start_response( + '200', + [ + ('Content-Length', str(content_length)), + ('X-Lines-Count', str(len(body))), + ], + ) + return body diff --git a/test/python/input_readline_size/wsgi.py b/test/python/input_readline_size/wsgi.py new file mode 100644 index 00000000..36cf07b0 --- /dev/null +++ b/test/python/input_readline_size/wsgi.py @@ -0,0 +1,16 @@ +def application(environ, start_response): + body = [] + + while True: + l = environ['wsgi.input'].readline(9) + if not l: + break + + body.append(l) + + if len(l) > 9: + body.append(b'len(l) > 9: ' + l) + break + + start_response('200', [('X-Lines-Count', str(len(body)))]) + return body diff --git a/test/python/input_readlines/wsgi.py b/test/python/input_readlines/wsgi.py new file mode 100644 index 00000000..64b03d79 --- /dev/null +++ b/test/python/input_readlines/wsgi.py @@ -0,0 +1,5 @@ +def application(environ, start_response): + body = environ['wsgi.input'].readlines() + + start_response('200', [('X-Lines-Count', str(len(body)))]) + return body diff --git a/test/python/upstreams/0/wsgi.py b/test/python/upstreams/0/wsgi.py new file mode 100644 index 00000000..2c88979b --- /dev/null +++ b/test/python/upstreams/0/wsgi.py @@ -0,0 +1,8 @@ +import time + +def application(env, start_response): + delay = int(env.get('HTTP_X_DELAY', 0)) + + start_response('200', [('Content-Length', '0'), ('X-Upstream', '0')]) + time.sleep(delay) + return [] diff --git a/test/python/upstreams/1/wsgi.py b/test/python/upstreams/1/wsgi.py new file mode 100644 index 00000000..5077bdb1 --- /dev/null +++ b/test/python/upstreams/1/wsgi.py @@ -0,0 +1,8 @@ +import time + +def application(env, start_response): + delay = int(env.get('HTTP_X_DELAY', 0)) + + start_response('200', [('Content-Length', '0'), ('X-Upstream', '1')]) + time.sleep(delay) + return [] diff --git a/test/python/upstreams/2/wsgi.py b/test/python/upstreams/2/wsgi.py new file mode 100644 index 00000000..bb0ce797 --- /dev/null +++ b/test/python/upstreams/2/wsgi.py @@ -0,0 +1,8 @@ +import time + +def application(env, start_response): + delay = int(env.get('HTTP_X_DELAY', 0)) + + start_response('200', [('Content-Length', '0'), ('X-Upstream', '2')]) + time.sleep(delay) + return [] |