aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2016-10-14 02:00:36 -0700
committerGitHub <noreply@github.com>2016-10-14 02:00:36 -0700
commitd5873302c1c91dfb373f7048ad61617434bba297 (patch)
treec2274bfa401f4a9649a12859499dbb8f0702fabd
parent61a1b96ca4bfa63ddbef65913ccd50b4327f90a6 (diff)
parente9284ab7eef2ed37565860acd301b717bfcb6018 (diff)
downloadmitmproxy-d5873302c1c91dfb373f7048ad61617434bba297.tar.gz
mitmproxy-d5873302c1c91dfb373f7048ad61617434bba297.tar.bz2
mitmproxy-d5873302c1c91dfb373f7048ad61617434bba297.zip
Merge pull request #1610 from mhils/issue-1605
Fix #1605
-rw-r--r--mitmproxy/console/master.py18
-rw-r--r--test/mitmproxy/console/test_master.py13
2 files changed, 19 insertions, 12 deletions
diff --git a/mitmproxy/console/master.py b/mitmproxy/console/master.py
index 25776512..16abcb96 100644
--- a/mitmproxy/console/master.py
+++ b/mitmproxy/console/master.py
@@ -685,24 +685,18 @@ class ConsoleMaster(flow.FlowMaster):
# Handlers
@controller.handler
def error(self, f):
- f = flow.FlowMaster.error(self, f)
- if f:
- self.process_flow(f)
- return f
+ super(ConsoleMaster, self).error(f)
+ self.process_flow(f)
@controller.handler
def request(self, f):
- f = flow.FlowMaster.request(self, f)
- if f:
- self.process_flow(f)
- return f
+ super(ConsoleMaster, self).request(f)
+ self.process_flow(f)
@controller.handler
def response(self, f):
- f = flow.FlowMaster.response(self, f)
- if f:
- self.process_flow(f)
- return f
+ super(ConsoleMaster, self).response(f)
+ self.process_flow(f)
@controller.handler
def tcp_message(self, f):
diff --git a/test/mitmproxy/console/test_master.py b/test/mitmproxy/console/test_master.py
index 8388a6bd..e57846ae 100644
--- a/test/mitmproxy/console/test_master.py
+++ b/test/mitmproxy/console/test_master.py
@@ -122,3 +122,16 @@ class TestMaster(mastertest.MasterTest):
for i in (1, 2, 3):
self.dummy_cycle(m, 1, b"")
assert len(m.state.flows) == i
+
+ def test_intercept(self):
+ """regression test for https://github.com/mitmproxy/mitmproxy/issues/1605"""
+ m = self.mkmaster(intercept="~b bar")
+ f = tutils.tflow(req=netlib.tutils.treq(content=b"foo"))
+ m.request(f)
+ assert not m.state.flows[0].intercepted
+ f = tutils.tflow(req=netlib.tutils.treq(content=b"bar"))
+ m.request(f)
+ assert m.state.flows[1].intercepted
+ f = tutils.tflow(resp=netlib.tutils.tresp(content=b"bar"))
+ m.request(f)
+ assert m.state.flows[2].intercepted