summaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
authorAndrey Zelenkov <zelenkov@nginx.com>2019-02-27 19:15:02 +0300
committerAndrey Zelenkov <zelenkov@nginx.com>2019-02-27 19:15:02 +0300
commit4de2c8b56719fce6b95b6f8a613b349590a3676f (patch)
tree28db74ede291a8cd16c34fdaa277370929a2ecfe /test
parent379e4c75fdf99439e481f739324d9c6d6d1b18ab (diff)
downloadunit-4de2c8b56719fce6b95b6f8a613b349590a3676f.tar.gz
unit-4de2c8b56719fce6b95b6f8a613b349590a3676f.tar.bz2
Tests: added "Host" and "Connetion" headers where necessary.
Also minor header organizing.
Diffstat (limited to '')
-rw-r--r--test/test_access_log.py8
-rw-r--r--test/test_go_application.py18
-rw-r--r--test/test_http_header.py64
-rw-r--r--test/test_node_application.py43
-rw-r--r--test/test_perl_application.py12
-rw-r--r--test/test_php_application.py12
-rw-r--r--test/test_python_application.py36
-rw-r--r--test/test_ruby_application.py12
-rw-r--r--test/test_settings.py9
-rw-r--r--test/test_tls.py28
10 files changed, 143 insertions, 99 deletions
diff --git a/test/test_access_log.py b/test/test_access_log.py
index c8464796..d6741c28 100644
--- a/test/test_access_log.py
+++ b/test/test_access_log.py
@@ -23,9 +23,9 @@ class TestUnitAccessLog(unit.TestUnitApplicationPython):
self.load('mirror')
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body='01234')
time.sleep(0.2)
@@ -34,9 +34,9 @@ class TestUnitAccessLog(unit.TestUnitApplicationPython):
self.search_in_log(r'"POST / HTTP/1.1" 200 5'), 'keepalive 1')
resp = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, sock=sock, body='0123456789')
time.sleep(0.2)
diff --git a/test/test_go_application.py b/test/test_go_application.py
index 90785851..1ecc2536 100644
--- a/test/test_go_application.py
+++ b/test/test_go_application.py
@@ -14,7 +14,8 @@ class TestUnitGoApplication(unit.TestUnitApplicationGo):
resp = self.post(headers={
'Host': 'localhost',
'Content-Type': 'text/html',
- 'Custom-Header': 'blah'
+ 'Custom-Header': 'blah',
+ 'Connection': 'close'
}, body=body)
self.assertEqual(resp['status'], 200, 'status')
@@ -36,7 +37,8 @@ class TestUnitGoApplication(unit.TestUnitApplicationGo):
'Server-Protocol': 'HTTP/1.1',
'Server-Protocol-Major': '1',
'Server-Protocol-Minor': '1',
- 'Custom-Header': 'blah'
+ 'Custom-Header': 'blah',
+ 'Connection': 'close'
}, 'headers')
self.assertEqual(resp['body'], body, 'body')
@@ -52,8 +54,8 @@ class TestUnitGoApplication(unit.TestUnitApplicationGo):
self.load('post_variables')
resp = self.post(headers={
- 'Content-Type': 'application/x-www-form-urlencoded',
'Host': 'localhost',
+ 'Content-Type': 'application/x-www-form-urlencoded',
'Connection': 'close'
}, body='var1=val1&var2=&var3')
@@ -74,17 +76,17 @@ class TestUnitGoApplication(unit.TestUnitApplicationGo):
self.load('mirror')
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body='0123456789' * 500)
self.assertEqual(resp['body'], '0123456789' * 500, 'keep-alive 1')
resp = self.post(headers={
- 'Connection': 'close',
+ 'Host': 'localhost',
'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Connection': 'close'
}, sock=sock, body='0123456789')
self.assertEqual(resp['body'], '0123456789', 'keep-alive 2')
@@ -93,8 +95,8 @@ class TestUnitGoApplication(unit.TestUnitApplicationGo):
self.load('cookies')
resp = self.get(headers={
- 'Cookie': 'var1=val1; var2=val2',
'Host': 'localhost',
+ 'Cookie': 'var1=val1; var2=val2',
'Connection': 'close'
})
diff --git a/test/test_http_header.py b/test/test_http_header.py
index 0544f3b3..a7638b8d 100644
--- a/test/test_http_header.py
+++ b/test/test_http_header.py
@@ -10,7 +10,9 @@ class TestUnitHTTPHeader(unit.TestUnitApplicationPython):
self.load('custom_header')
resp = self.get(headers={
- 'Custom-Header': ' ,'
+ 'Host': 'localhost',
+ 'Custom-Header': ' ,',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 200, 'value leading sp status')
@@ -21,7 +23,9 @@ class TestUnitHTTPHeader(unit.TestUnitApplicationPython):
self.load('custom_header')
resp = self.get(headers={
- 'Custom-Header': '\t,'
+ 'Host': 'localhost',
+ 'Custom-Header': '\t,',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 200, 'value leading htab status')
@@ -32,7 +36,9 @@ class TestUnitHTTPHeader(unit.TestUnitApplicationPython):
self.load('custom_header')
resp = self.get(headers={
- 'Custom-Header': ', '
+ 'Host': 'localhost',
+ 'Custom-Header': ', ',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 200, 'value trailing sp status')
@@ -43,7 +49,9 @@ class TestUnitHTTPHeader(unit.TestUnitApplicationPython):
self.load('custom_header')
resp = self.get(headers={
- 'Custom-Header': ',\t'
+ 'Host': 'localhost',
+ 'Custom-Header': ',\t',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 200, 'value trailing htab status')
@@ -54,7 +62,9 @@ class TestUnitHTTPHeader(unit.TestUnitApplicationPython):
self.load('custom_header')
resp = self.get(headers={
- 'Custom-Header': ' , '
+ 'Host': 'localhost',
+ 'Custom-Header': ' , ',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 200, 'value both sp status')
@@ -65,7 +75,9 @@ class TestUnitHTTPHeader(unit.TestUnitApplicationPython):
self.load('custom_header')
resp = self.get(headers={
- 'Custom-Header': '\t,\t'
+ 'Host': 'localhost',
+ 'Custom-Header': '\t,\t',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 200, 'value both htab status')
@@ -76,7 +88,9 @@ class TestUnitHTTPHeader(unit.TestUnitApplicationPython):
self.load('custom_header')
resp = self.get(headers={
- 'Custom-Header': '(),/:;<=>?@[\]{}\t !#$%&\'*+-.^_`|~'
+ 'Host': 'localhost',
+ 'Custom-Header': '(),/:;<=>?@[\]{}\t !#$%&\'*+-.^_`|~',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 200, 'value chars status')
@@ -113,7 +127,9 @@ Connection: close
self.load('empty')
resp = self.get(headers={
- ' Custom-Header': 'blah'
+ 'Host': 'localhost',
+ ' Custom-Header': 'blah',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 400, 'field leading sp')
@@ -122,7 +138,9 @@ Connection: close
self.load('empty')
resp = self.get(headers={
- '\tCustom-Header': 'blah'
+ 'Host': 'localhost',
+ '\tCustom-Header': 'blah',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 400, 'field leading htab')
@@ -131,7 +149,9 @@ Connection: close
self.load('empty')
resp = self.get(headers={
- 'Custom-Header ': 'blah'
+ 'Host': 'localhost',
+ 'Custom-Header ': 'blah',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 400, 'field trailing sp')
@@ -140,7 +160,9 @@ Connection: close
self.load('empty')
resp = self.get(headers={
- 'Custom-Header\t': 'blah'
+ 'Host': 'localhost',
+ 'Custom-Header\t': 'blah',
+ 'Connection': 'close'
})
self.assertEqual(resp['status'], 400, 'field trailing htab')
@@ -149,45 +171,45 @@ Connection: close
self.load('empty')
self.assertEqual(self.post(headers={
+ 'Host': 'localhost',
'Content-Length': str(2 ** 64),
- 'Connection': 'close',
- 'Host': 'localhost'
+ 'Connection': 'close'
}, body='X' * 1000)['status'], 400, 'Content-Length big')
def test_http_header_content_length_negative(self):
self.load('empty')
self.assertEqual(self.post(headers={
+ 'Host': 'localhost',
'Content-Length': '-100',
- 'Connection': 'close',
- 'Host': 'localhost'
+ 'Connection': 'close'
}, body='X' * 1000)['status'], 400, 'Content-Length negative')
def test_http_header_content_length_text(self):
self.load('empty')
self.assertEqual(self.post(headers={
+ 'Host': 'localhost',
'Content-Length': 'blah',
- 'Connection': 'close',
- 'Host': 'localhost'
+ 'Connection': 'close'
}, 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={
+ 'Host': 'localhost',
'Content-Length': '41, 42',
- 'Connection': 'close',
- 'Host': 'localhost'
+ 'Connection': 'close'
}, body='X' * 1000)['status'], 400, 'Content-Length multiple value')
def test_http_header_content_length_multiple_fields(self):
self.load('empty')
self.assertEqual(self.post(headers={
+ 'Host': 'localhost',
'Content-Length': ['41', '42'],
- 'Connection': 'close',
- 'Host': 'localhost'
+ 'Connection': 'close'
}, body='X' * 1000)['status'], 400, 'Content-Length multiple fields')
if __name__ == '__main__':
diff --git a/test/test_node_application.py b/test/test_node_application.py
index 05b518f5..cd64fefa 100644
--- a/test/test_node_application.py
+++ b/test/test_node_application.py
@@ -28,7 +28,8 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
resp = self.post(headers={
'Host': 'localhost',
'Content-Type': 'text/html',
- 'Custom-Header': 'blah'
+ 'Custom-Header': 'blah',
+ 'Connection': 'close'
}, body=body)
self.assertEqual(resp['status'], 200, 'status')
@@ -43,10 +44,11 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
raw_headers = headers.pop('Request-Raw-Headers')
self.assertRegex(raw_headers, r'^(?:Host|localhost|Content-Type|' \
- 'text\/html|Custom-Header|blah|Content-Length|17|,)+$',
- 'raw headers')
+ 'text\/html|Custom-Header|blah|Content-Length|17|Connection|' \
+ 'close|,)+$', 'raw headers')
self.assertDictEqual(headers, {
+ 'Connection': 'close',
'Content-Length': str(len(body)),
'Content-Type': 'text/html',
'Request-Method': 'POST',
@@ -91,17 +93,17 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
self.load('mirror')
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body='0123456789' * 500)
self.assertEqual(resp['body'], '0123456789' * 500, 'keep-alive 1')
resp = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, sock=sock, body='0123456789')
self.assertEqual(resp['body'], '0123456789', 'keep-alive 2')
@@ -142,7 +144,8 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
resp = self.get(headers={
'Host': 'localhost',
- 'X-Remove': 'X-Header'
+ 'X-Remove': 'X-Header',
+ 'Connection': 'close'
})
self.assertEqual(resp['headers']['Was-Header'], 'true', 'was header')
self.assertEqual(resp['headers']['Has-Header'], 'false', 'has header')
@@ -153,7 +156,8 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
self.assertEqual(self.get(headers={
'Host': 'localhost',
- 'X-Remove': 'blah'
+ 'X-Remove': 'blah',
+ 'Connection': 'close'
})['headers']['Has-Header'], 'true', 'remove header nonexisting')
def test_node_application_update_header(self):
@@ -194,7 +198,8 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
self.assertEqual(self.post(headers={
'Host': 'localhost',
- 'Content-Type': 'text/html'
+ 'Content-Type': 'text/html',
+ 'Connection': 'close'
}, body='callback')['status'], 200, 'promise handler request')
self.assertTrue(self.waitforfiles(self.testdir + '/node/callback'),
'promise handler')
@@ -205,7 +210,8 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
self.assertEqual(self.post(headers={
'Host': 'localhost',
'Content-Type': 'text/html',
- 'X-Write-Call': '1'
+ 'X-Write-Call': '1',
+ 'Connection': 'close'
}, body='callback')['status'], 200,
'promise handler request write after end')
@@ -214,7 +220,8 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
self.assertEqual(self.post(headers={
'Host': 'localhost',
- 'Content-Type': 'text/html'
+ 'Content-Type': 'text/html',
+ 'Connection': 'close'
}, body='end')['status'], 200, 'promise end request')
self.assertTrue(self.waitforfiles(self.testdir + '/node/callback'),
'promise end')
@@ -224,7 +231,8 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
self.post(headers={
'Host': 'localhost',
- 'Content-Type': 'text/html'
+ 'Content-Type': 'text/html',
+ 'Connection': 'close'
}, body='callback1')
self.assertTrue(self.waitforfiles(self.testdir + '/node/callback1'),
@@ -232,7 +240,8 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
self.post(headers={
'Host': 'localhost',
- 'Content-Type': 'text/html'
+ 'Content-Type': 'text/html',
+ 'Connection': 'close'
}, body='callback2')
self.assertTrue(self.waitforfiles(self.testdir + '/node/callback2'),
@@ -260,12 +269,14 @@ class TestUnitNodeApplication(unit.TestUnitApplicationNode):
self.assertEqual(self.get(headers={
'Host': 'localhost',
- 'X-Header': 'length'
+ 'X-Header': 'length',
+ 'Connection': 'close'
})['headers']['X-Has-Header'], 'false', 'has header length')
self.assertEqual(self.get(headers={
'Host': 'localhost',
- 'X-Header': 'Date'
+ 'X-Header': 'Date',
+ 'Connection': 'close'
})['headers']['X-Has-Header'], 'false', 'has header date')
def test_node_application_write_multiple(self):
diff --git a/test/test_perl_application.py b/test/test_perl_application.py
index f9acbd32..6fd0f78e 100644
--- a/test/test_perl_application.py
+++ b/test/test_perl_application.py
@@ -14,7 +14,8 @@ class TestUnitPerlApplication(unit.TestUnitApplicationPerl):
resp = self.post(headers={
'Host': 'localhost',
'Content-Type': 'text/html',
- 'Custom-Header': 'blah'
+ 'Custom-Header': 'blah',
+ 'Connection': 'close'
}, body=body)
self.assertEqual(resp['status'], 200, 'status')
@@ -30,6 +31,7 @@ class TestUnitPerlApplication(unit.TestUnitApplicationPerl):
'date header')
self.assertDictEqual(headers, {
+ 'Connection': 'close',
'Content-Length': str(len(body)),
'Content-Type': 'text/html',
'Request-Method': 'POST',
@@ -170,17 +172,17 @@ class TestUnitPerlApplication(unit.TestUnitApplicationPerl):
self.load('variables')
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body='0123456789' * 500)
self.assertEqual(resp['body'], '0123456789' * 500, 'keep-alive 1')
resp = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, sock=sock, body='0123456789')
self.assertEqual(resp['body'], '0123456789', 'keep-alive 2')
diff --git a/test/test_php_application.py b/test/test_php_application.py
index ba9c03b3..f077cd3b 100644
--- a/test/test_php_application.py
+++ b/test/test_php_application.py
@@ -19,7 +19,8 @@ class TestUnitPHPApplication(unit.TestUnitApplicationPHP):
resp = self.post(headers={
'Host': 'localhost',
'Content-Type': 'text/html',
- 'Custom-Header': 'blah'
+ 'Custom-Header': 'blah',
+ 'Connection': 'close'
}, body=body)
self.assertEqual(resp['status'], 200, 'status')
@@ -39,6 +40,7 @@ class TestUnitPHPApplication(unit.TestUnitApplicationPHP):
headers.pop('Content-type')
self.assertDictEqual(headers, {
+ 'Connection': 'close',
'Content-Length': str(len(body)),
'Request-Method': 'POST',
'Request-Uri': '/',
@@ -96,17 +98,17 @@ class TestUnitPHPApplication(unit.TestUnitApplicationPHP):
self.load('mirror')
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body='0123456789' * 500)
self.assertEqual(resp['body'], '0123456789' * 500, 'keep-alive 1')
resp = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, sock=sock, body='0123456789')
self.assertEqual(resp['body'], '0123456789', 'keep-alive 2')
diff --git a/test/test_python_application.py b/test/test_python_application.py
index d37af0c4..da5d3ba2 100644
--- a/test/test_python_application.py
+++ b/test/test_python_application.py
@@ -15,7 +15,8 @@ class TestUnitPythonApplication(unit.TestUnitApplicationPython):
resp = self.post(headers={
'Host': 'localhost',
'Content-Type': 'text/html',
- 'Custom-Header': 'blah'
+ 'Custom-Header': 'blah',
+ 'Connection': 'close'
}, body=body)
self.assertEqual(resp['status'], 200, 'status')
@@ -31,6 +32,7 @@ class TestUnitPythonApplication(unit.TestUnitApplicationPython):
'date header')
self.assertDictEqual(headers, {
+ 'Connection': 'close',
'Content-Length': str(len(body)),
'Content-Type': 'text/html',
'Request-Method': 'POST',
@@ -90,9 +92,9 @@ class TestUnitPythonApplication(unit.TestUnitApplicationPython):
self.load('ctx_iter_atexit')
resp = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, body='0123456789')
self.assertEqual(resp['status'], 200, 'ctx iter status')
@@ -114,17 +116,17 @@ class TestUnitPythonApplication(unit.TestUnitApplicationPython):
self.load('mirror')
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body='0123456789' * 500)
self.assertEqual(resp['body'], '0123456789' * 500, 'keep-alive 1')
resp = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, sock=sock, body='0123456789')
self.assertEqual(resp['body'], '0123456789', 'keep-alive 2')
@@ -138,9 +140,9 @@ class TestUnitPythonApplication(unit.TestUnitApplicationPython):
for i in range(conns):
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body=body)
self.assertEqual(resp['body'], body, 'keep-alive open')
@@ -153,9 +155,9 @@ class TestUnitPythonApplication(unit.TestUnitApplicationPython):
for i in range(conns):
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, sock=socks[i], body=body)
self.assertEqual(resp['body'], body, 'keep-alive request')
@@ -166,9 +168,9 @@ class TestUnitPythonApplication(unit.TestUnitApplicationPython):
for i in range(conns):
resp = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, sock=socks[i], body=body)
self.assertEqual(resp['body'], body, 'keep-alive close')
@@ -183,9 +185,9 @@ class TestUnitPythonApplication(unit.TestUnitApplicationPython):
body = '0123456789'
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body=body)
self.assertEqual(resp['body'], body, 'reconfigure 2 keep-alive 1')
@@ -193,9 +195,9 @@ class TestUnitPythonApplication(unit.TestUnitApplicationPython):
self.load('empty')
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, sock=sock, body=body)
self.assertEqual(resp['status'], 200, 'reconfigure 2 keep-alive 2')
diff --git a/test/test_ruby_application.py b/test/test_ruby_application.py
index 9eed3e4a..262fc497 100644
--- a/test/test_ruby_application.py
+++ b/test/test_ruby_application.py
@@ -14,7 +14,8 @@ class TestUnitRubyApplication(unit.TestUnitApplicationRuby):
resp = self.post(headers={
'Host': 'localhost',
'Content-Type': 'text/html',
- 'Custom-Header': 'blah'
+ 'Custom-Header': 'blah',
+ 'Connection': 'close'
}, body=body)
self.assertEqual(resp['status'], 200, 'status')
@@ -30,6 +31,7 @@ class TestUnitRubyApplication(unit.TestUnitApplicationRuby):
'date header')
self.assertDictEqual(headers, {
+ 'Connection': 'close',
'Content-Length': str(len(body)),
'Content-Type': 'text/html',
'Request-Method': 'POST',
@@ -286,17 +288,17 @@ class TestUnitRubyApplication(unit.TestUnitApplicationRuby):
self.load('mirror')
(resp, sock) = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body='0123456789' * 500)
self.assertEqual(resp['body'], '0123456789' * 500, 'keep-alive 1')
resp = self.post(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, sock=sock, body='0123456789')
self.assertEqual(resp['body'], '0123456789', 'keep-alive 2')
diff --git a/test/test_settings.py b/test/test_settings.py
index d272f701..324042f9 100644
--- a/test/test_settings.py
+++ b/test/test_settings.py
@@ -118,6 +118,7 @@ Connection: close
Host: localhost
Content-Type: text/html
Content-Length: %d
+Connection: close
""" % data_len + ('X' * data_len)
@@ -140,15 +141,15 @@ Content-Length: %d
self.conf({'http': { 'idle_timeout': 2 }}, 'settings')
(resp, sock) = self.get(headers={
- 'Connection': 'keep-alive',
- 'Host': 'localhost'
+ 'Host': 'localhost',
+ 'Connection': 'keep-alive'
}, start=True)
time.sleep(3)
resp = self.get(headers={
- 'Connection': 'close',
- 'Host': 'localhost'
+ 'Host': 'localhost',
+ 'Connection': 'close'
}, sock=sock)
self.assertEqual(resp['status'], 408, 'status idle timeout')
diff --git a/test/test_tls.py b/test/test_tls.py
index dc2f4505..2131bf30 100644
--- a/test/test_tls.py
+++ b/test/test_tls.py
@@ -313,8 +313,8 @@ basicConstraints = critical,CA:TRUE""" % {
self.certificate()
(resp, sock) = self.get(headers={
- 'Connection': 'keep-alive',
- 'Host': 'localhost'
+ 'Host': 'localhost',
+ 'Connection': 'keep-alive'
}, start=True)
self.assertEqual(resp['status'], 200, 'initial status')
@@ -334,17 +334,17 @@ basicConstraints = critical,CA:TRUE""" % {
self.add_tls(application='mirror')
(resp, sock) = self.post_ssl(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body='0123456789')
self.assertEqual(resp['body'], '0123456789', 'keepalive 1')
resp = self.post_ssl(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, sock=sock, body='0123456789')
self.assertEqual(resp['body'], '0123456789', 'keepalive 2')
@@ -358,8 +358,8 @@ basicConstraints = critical,CA:TRUE""" % {
self.add_tls()
(resp, sock) = self.get_ssl(headers={
- 'Connection': 'keep-alive',
- 'Host': 'localhost'
+ 'Host': 'localhost',
+ 'Connection': 'keep-alive'
}, start=True)
self.conf({
@@ -369,8 +369,8 @@ basicConstraints = critical,CA:TRUE""" % {
try:
resp = self.get_ssl(headers={
- 'Connection': 'close',
- 'Host': 'localhost'
+ 'Host': 'localhost',
+ 'Connection': 'close'
}, sock=sock)
except:
resp = None
@@ -397,9 +397,9 @@ basicConstraints = critical,CA:TRUE""" % {
self.add_tls(application='mirror')
(resp, sock) = self.post_ssl(headers={
+ 'Host': 'localhost',
'Connection': 'keep-alive',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, start=True, body='0123456789')
app_id = self.findall(r'(\d+)#\d+ "mirror" application started')[0]
@@ -410,9 +410,9 @@ basicConstraints = critical,CA:TRUE""" % {
'#)(\d+)#\d+ "mirror" application started'))
resp = self.post_ssl(headers={
+ 'Host': 'localhost',
'Connection': 'close',
- 'Content-Type': 'text/html',
- 'Host': 'localhost'
+ 'Content-Type': 'text/html'
}, sock=sock, body='0123456789')
self.assertEqual(resp['status'], 200, 'application respawn status')