diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2012-02-10 15:31:45 +1300 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2012-02-10 15:31:45 +1300 |
commit | 1ad7e9152736251203cd9c57c6af3e19a2f7ad8a (patch) | |
tree | 48b249d04d4b44486c40518d2e8ea2bd42e89328 | |
parent | 5f785e26b9b863d5ab340e0299ae31753cc84dfb (diff) | |
download | mitmproxy-1ad7e9152736251203cd9c57c6af3e19a2f7ad8a.tar.gz mitmproxy-1ad7e9152736251203cd9c57c6af3e19a2f7ad8a.tar.bz2 mitmproxy-1ad7e9152736251203cd9c57c6af3e19a2f7ad8a.zip |
Make filter matching act more sensibly.
-rw-r--r-- | libmproxy/flow.py | 14 | ||||
-rw-r--r-- | test/test_console.py | 2 | ||||
-rw-r--r-- | test/test_flow.py | 11 |
3 files changed, 17 insertions, 10 deletions
diff --git a/libmproxy/flow.py b/libmproxy/flow.py index 2499db4e..2b371180 100644 --- a/libmproxy/flow.py +++ b/libmproxy/flow.py @@ -932,12 +932,14 @@ class Flow: if matched, False if not. """ if f: - if self.response: - return f(self.response) - elif self.request: - return f(self.request) - elif self.error: - return f(self.error) + if self.response and f(self.response): + return True + elif self.request and f(self.request): + return True + elif self.error and f(self.error): + return True + else: + return False else: return True diff --git a/test/test_console.py b/test/test_console.py index 3de9cca4..6db2f994 100644 --- a/test/test_console.py +++ b/test/test_console.py @@ -72,7 +72,7 @@ class uState(libpry.AutoTree): self._add_response(c) self._add_request(c) self._add_response(c) - assert not c.set_limit("~q") + assert not c.set_limit("~s") assert len(c.view) == 3 assert c.focus == 0 diff --git a/test/test_flow.py b/test/test_flow.py index 088a180f..5a8eb0f2 100644 --- a/test/test_flow.py +++ b/test/test_flow.py @@ -142,6 +142,10 @@ class uFlow(libpry.AutoTree): f.request = f.response.request assert not f.match(filt.parse("~b test")) assert f.match(None) + assert not f.match(filt.parse("~b test")) + + f = tutils.tflow_err() + assert f.match(filt.parse("~e")) def test_backup(self): f = tutils.tflow() @@ -304,10 +308,11 @@ class uState(libpry.AutoTree): req = tutils.treq() f = c.add_request(req) e = flow.Error(f.request, "message") - c.set_limit("~bs message") + c.set_limit("~e") + assert not c.view assert not c.view assert c.add_error(e) - #assert c.view + assert c.view def test_set_limit(self): @@ -332,7 +337,7 @@ class uState(libpry.AutoTree): c.add_request(req) assert len(c.view) == 2 c.set_limit("~q") - assert len(c.view) == 1 + assert len(c.view) == 2 c.set_limit("~s") assert len(c.view) == 1 |