diff options
author | Andrey Zelenkov <zelenkov@nginx.com> | 2018-04-05 17:55:06 +0300 |
---|---|---|
committer | Andrey Zelenkov <zelenkov@nginx.com> | 2018-04-05 17:55:06 +0300 |
commit | f6c3ef7ed3efd6f63ef55a117fe475bd369d248b (patch) | |
tree | d6cf95d43ef019925353131c15ee5033c4f92f4c /test | |
parent | 2f3b9d458328c7c96f91259c1892810c16cbccdd (diff) | |
download | unit-f6c3ef7ed3efd6f63ef55a117fe475bd369d248b.tar.gz unit-f6c3ef7ed3efd6f63ef55a117fe475bd369d248b.tar.bz2 |
Tests: added Python test with not iterable object.
Diffstat (limited to '')
-rw-r--r-- | test/python/close/wsgi.py | 1 | ||||
-rw-r--r-- | test/python/close_error/wsgi.py | 1 | ||||
-rw-r--r-- | test/python/not_iterable/wsgi.py | 7 | ||||
-rw-r--r-- | test/test_python_application.py | 11 |
4 files changed, 20 insertions, 0 deletions
diff --git a/test/python/close/wsgi.py b/test/python/close/wsgi.py index f80a34d7..c86a6097 100644 --- a/test/python/close/wsgi.py +++ b/test/python/close/wsgi.py @@ -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.') diff --git a/test/python/close_error/wsgi.py b/test/python/close_error/wsgi.py index bd9d4d36..3e9fb63d 100644 --- a/test/python/close_error/wsgi.py +++ b/test/python/close_error/wsgi.py @@ -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.') diff --git a/test/python/not_iterable/wsgi.py b/test/python/not_iterable/wsgi.py new file mode 100644 index 00000000..ad24cca9 --- /dev/null +++ b/test/python/not_iterable/wsgi.py @@ -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'))]) diff --git a/test/test_python_application.py b/test/test_python_application.py index 7e1df887..f54d5803 100644 --- a/test/test_python_application.py +++ b/test/test_python_application.py @@ -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() |