diff options
author | Andrey Zelenkov <zelenkov@nginx.com> | 2019-02-14 16:09:58 +0300 |
---|---|---|
committer | Andrey Zelenkov <zelenkov@nginx.com> | 2019-02-14 16:09:58 +0300 |
commit | ab40732c0886b979090da6245cc1a7f0ba52de49 (patch) | |
tree | 61e4b0ad433b6185546a55b0e59a422c459aa9bc /test/test_http_header.py | |
parent | 0e5aaf60d4ca2da509a6a73bebe71139f8aae306 (diff) | |
download | unit-ab40732c0886b979090da6245cc1a7f0ba52de49.tar.gz unit-ab40732c0886b979090da6245cc1a7f0ba52de49.tar.bz2 |
Tests: added tests for "Content-Length" header.
Diffstat (limited to 'test/test_http_header.py')
-rw-r--r-- | test/test_http_header.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/test/test_http_header.py b/test/test_http_header.py index b850831d..7894c94e 100644 --- a/test/test_http_header.py +++ b/test/test_http_header.py @@ -162,5 +162,51 @@ a self.assertEqual(resp['status'], 200, 'transfer encoding chunked') + def test_http_header_content_length_big(self): + self.load('empty') + + self.assertEqual(self.post(headers={ + 'Content-Length': str(2 ** 64), + 'Connection': 'close', + 'Host': 'localhost' + }, body='X' * 1000)['status'], 400, 'Content-Length big') + + def test_http_header_content_length_negative(self): + self.load('empty') + + self.assertEqual(self.post(headers={ + 'Content-Length': '-100', + 'Connection': 'close', + 'Host': 'localhost' + }, body='X' * 1000)['status'], 400, 'Content-Length negative') + + def test_http_header_content_length_text(self): + self.load('empty') + + self.assertEqual(self.post(headers={ + 'Content-Length': 'blah', + 'Connection': 'close', + 'Host': 'localhost' + }, body='X' * 1000)['status'], 400, 'Content-Length text') + + def test_http_header_content_length_multiple_values(self): + self.load('empty') + + self.assertEqual(self.post(headers={ + 'Content-Length': '41, 42', + 'Connection': 'close', + 'Host': 'localhost' + }, body='X' * 1000)['status'], 400, 'Content-Length multiple value') + + @unittest.expectedFailure + def test_http_header_content_length_multiple_fields(self): + self.load('empty') + + self.assertEqual(self.post(headers={ + 'Content-Length': ['41', '42'], + 'Connection': 'close', + 'Host': 'localhost' + }, body='X' * 1000)['status'], 400, 'Content-Length multiple fields') + if __name__ == '__main__': TestUnitHTTPHeader.main() |