diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/test_protocol_http.py | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/test/test_protocol_http.py b/test/test_protocol_http.py index 4026e79a..451b7b5d 100644 --- a/test/test_protocol_http.py +++ b/test/test_protocol_http.py @@ -54,7 +54,6 @@ class TestHTTPRequest: r = tutils.treq() tutils.raises("Invalid request form", r._assemble, "antiauthority") - def test_set_url(self): r = tutils.treq_absolute() r.set_url("https://otheraddress:42/ORLY") @@ -127,6 +126,21 @@ class TestProxyChainingSSL(tservers.HTTPChainProxyTest): # request from chain[1] to proxy assert self.proxy.tmaster.state.flow_count() == 1 # request from chain[0] (regular proxy doesn't store CONNECTs) + def test_closing_connect_response(self): + """ + https://github.com/mitmproxy/mitmproxy/issues/313 + """ + def handle_request(r): + r.httpversion = (1,0) + del r.headers["Content-Length"] + r.reply() + _handle_request = self.chain[0].tmaster.handle_request + self.chain[0].tmaster.handle_request = handle_request + try: + assert self.pathoc().request("get:/p/418").status_code == 418 + finally: + self.chain[0].tmaster.handle_request = _handle_request + class TestProxyChainingSSLReconnect(tservers.HTTPChainProxyTest): ssl = True |