diff options
| author | Aldo Cortesi <aldo@nullcube.com> | 2012-02-23 17:06:09 +1300 |
|---|---|---|
| committer | Aldo Cortesi <aldo@nullcube.com> | 2012-02-23 17:06:09 +1300 |
| commit | ddc9155c243f9ccb463a84f259837ef79d607d66 (patch) | |
| tree | 9d264bc7efc410b2f4abf7ad5c9951bfc20acc6f | |
| parent | 2df9c52c097e9d1f7b4ba7f4f66094ef6cf27814 (diff) | |
| download | mitmproxy-ddc9155c243f9ccb463a84f259837ef79d607d66.tar.gz mitmproxy-ddc9155c243f9ccb463a84f259837ef79d607d66.tar.bz2 mitmproxy-ddc9155c243f9ccb463a84f259837ef79d607d66.zip | |
Make "~q" filter work more intuitively.
It now matches any flow that has no response.
| -rw-r--r-- | libmproxy/filt.py | 5 | ||||
| -rw-r--r-- | test/test_filt.py | 6 |
2 files changed, 5 insertions, 6 deletions
diff --git a/libmproxy/filt.py b/libmproxy/filt.py index b9d6f83a..b49c856e 100644 --- a/libmproxy/filt.py +++ b/libmproxy/filt.py @@ -66,9 +66,10 @@ class FErr(_Action): class FReq(_Action): code = "q" - help = "Match request" + help = "Match request with no response" def __call__(self, f): - return True if f.request else False + if not f.response: + return True class FResp(_Action): diff --git a/test/test_filt.py b/test/test_filt.py index eb5bc135..61acbc7d 100644 --- a/test/test_filt.py +++ b/test/test_filt.py @@ -135,8 +135,7 @@ class uMatching(libpry.AutoTree): s = self.resp() assert self.q("~q", q) - # FIXME - assert self.q("~q", s) + assert not self.q("~q", s) assert not self.q("~s", q) assert self.q("~s", s) @@ -226,8 +225,7 @@ class uMatching(libpry.AutoTree): assert self.q("~c 200 | ~h nohead", s) assert self.q("~c 201 | ~h head", s) assert not self.q("~c 201 | ~h nohead", s) - # FIXME - #assert self.q("(~c 201 | ~h nohead) | ~s", s) + assert self.q("(~c 201 | ~h nohead) | ~s", s) def test_not(self): s = self.resp() |
