diff options
Diffstat (limited to 'tests/fixtureapps/error.py')
-rw-r--r-- | tests/fixtureapps/error.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/fixtureapps/error.py b/tests/fixtureapps/error.py new file mode 100644 index 0000000..5afb1c5 --- /dev/null +++ b/tests/fixtureapps/error.py @@ -0,0 +1,21 @@ +def app(environ, start_response): # pragma: no cover + cl = environ.get("CONTENT_LENGTH", None) + if cl is not None: + cl = int(cl) + body = environ["wsgi.input"].read(cl) + cl = str(len(body)) + if environ["PATH_INFO"] == "/before_start_response": + raise ValueError("wrong") + write = start_response( + "200 OK", [("Content-Length", cl), ("Content-Type", "text/plain")] + ) + if environ["PATH_INFO"] == "/after_write_cb": + write("abc") + if environ["PATH_INFO"] == "/in_generator": + + def foo(): + yield "abc" + raise ValueError + + return foo() + raise ValueError("wrong") |