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')