aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_tcp.py
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2014-03-10 17:43:39 +0100
committerMaximilian Hils <git@maximilianhils.com>2014-03-10 17:43:39 +0100
commit4bd15a28b73f521fc08ea77512198faffeaaa247 (patch)
tree6f89534863b8261453a14b47cabab9a6481e6ea1 /test/test_tcp.py
parentf5cc63d653b27210d9c3d7646c01c3a9d540d9c7 (diff)
downloadmitmproxy-4bd15a28b73f521fc08ea77512198faffeaaa247.tar.gz
mitmproxy-4bd15a28b73f521fc08ea77512198faffeaaa247.tar.bz2
mitmproxy-4bd15a28b73f521fc08ea77512198faffeaaa247.zip
fix #28
Diffstat (limited to 'test/test_tcp.py')
-rw-r--r--test/test_tcp.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/test_tcp.py b/test/test_tcp.py
index ec995702..77146829 100644
--- a/test/test_tcp.py
+++ b/test/test_tcp.py
@@ -106,6 +106,11 @@ class TestDisconnect(test.ServerTestBase):
assert c.rfile.readline() == testval
+class HardDisconnectHandler(tcp.BaseHandler):
+ def handle(self):
+ self.connection.close()
+
+
class TestServerSSL(test.ServerTestBase):
handler = EchoHandler
ssl = dict(
@@ -293,6 +298,24 @@ class TestSSLDisconnect(test.ServerTestBase):
tutils.raises(Queue.Empty, self.q.get_nowait)
+class TestSSLHardDisconnect(test.ServerTestBase):
+ handler = HardDisconnectHandler
+ ssl = dict(
+ cert = tutils.test_data.path("data/server.crt"),
+ key = tutils.test_data.path("data/server.key"),
+ request_client_cert = False,
+ v3_only = False
+ )
+ def test_echo(self):
+ c = tcp.TCPClient(("127.0.0.1", self.port))
+ c.connect()
+ c.convert_to_ssl()
+ # Exercise SSL.SysCallError
+ c.rfile.read(10)
+ c.close()
+ tutils.raises(tcp.NetLibDisconnect, c.wfile.write, "foo")
+
+
class TestDisconnect(test.ServerTestBase):
def test_echo(self):
c = tcp.TCPClient(("127.0.0.1", self.port))