diff options
Diffstat (limited to 'test/python')
-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 |
4 files changed, 55 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 |