summaryrefslogtreecommitdiffhomepage
path: root/test/test_tls.py
diff options
context:
space:
mode:
authorAndrey Zelenkov <zelenkov@nginx.com>2018-12-25 16:35:35 +0300
committerAndrey Zelenkov <zelenkov@nginx.com>2018-12-25 16:35:35 +0300
commit4ccf0c8a17d4f481cbb9b4047da30cbec5497c46 (patch)
tree31b9385ee0caf384826de6d586d4d648beab0bce /test/test_tls.py
parentf5b7fee128dfabc3225e05a69a5c9458b63c315b (diff)
downloadunit-4ccf0c8a17d4f481cbb9b4047da30cbec5497c46.tar.gz
unit-4ccf0c8a17d4f481cbb9b4047da30cbec5497c46.tar.bz2
Tests: fixed test_tls_reconfigure.
Previously, order of applying TLS configuration and sending partial request to the application was uncertain. These changes make sure that client-application connection was established before reconfiguration. Additionally, added test to check that non-TLS connection works correctly after reconfiguration.
Diffstat (limited to '')
-rw-r--r--test/test_tls.py20
1 files changed, 11 insertions, 9 deletions
diff --git a/test/test_tls.py b/test/test_tls.py
index fa5c9754..dc2f4505 100644
--- a/test/test_tls.py
+++ b/test/test_tls.py
@@ -306,23 +306,25 @@ basicConstraints = critical,CA:TRUE""" % {
self.assertEqual(self.get_ssl()['status'], 200,
'certificate chain intermediate server')
+ @unittest.expectedFailure
def test_tls_reconfigure(self):
self.load('empty')
self.certificate()
- (resp, sock) = self.http(b"""GET / HTTP/1.1
-""", start=True, raw=True, no_recv=True)
-
- self.add_tls()
+ (resp, sock) = self.get(headers={
+ 'Connection': 'keep-alive',
+ 'Host': 'localhost'
+ }, start=True)
- resp = self.http(b"""Host: localhost
-Connection: close
+ self.assertEqual(resp['status'], 200, 'initial status')
-""", sock=sock, raw=True)
+ self.add_tls()
- self.assertEqual(resp['status'], 200, 'update status')
- self.assertEqual(self.get_ssl()['status'], 200, 'update tls status')
+ self.assertEqual(self.get(sock=sock)['status'], 200,
+ 'reconfigure status')
+ self.assertEqual(self.get_ssl()['status'], 200,
+ 'reconfigure tls status')
def test_tls_keepalive(self):
self.load('mirror')