Tests: added Python test with not iterable object.

This commit is contained in:
Andrey Zelenkov
2018-04-05 17:55:06 +03:00
parent 2f3b9d4583
commit f6c3ef7ed3
4 changed files with 20 additions and 0 deletions

View File

@@ -5,6 +5,7 @@ class application:
def __iter__(self):
self.start('200', [(('Content-Length', '0'))])
yield b''
def close(self):
self.environ['wsgi.errors'].write('Close called.')

View File

@@ -5,6 +5,7 @@ class application:
def __iter__(self):
self.start('200', [(('!', '0'))])
yield b''
def close(self):
self.environ['wsgi.errors'].write('Close called.')

View File

@@ -0,0 +1,7 @@
class application:
def __init__(self, environ, start_response):
self.environ = environ
self.start = start_response
def __iter__(self):
self.start('200', [(('Content-Length', '0'))])

View File

@@ -227,5 +227,16 @@ class TestUnitPythonApplication(unit.TestUnitApplicationPython):
self.assertIsNotNone(self.search_in_log(r'Close called\.'),
'close error')
def test_python_application_not_iterable(self):
self.load('not_iterable')
self.get(raw_resp=True)
self.stop()
self.assertIsNotNone(self.search_in_log(
r'\[error\].+the application returned not an iterable object'),
'not iterable')
if __name__ == '__main__':
unittest.main()