diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2016-10-29 10:17:29 +1300 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2016-10-29 10:17:29 +1300 |
commit | 12a70d03ad721f6a137d118b65c11851ef7b96d7 (patch) | |
tree | 6e2fae01f53aa007e4a8be2369f37ebf5cfa7264 /test | |
parent | 9dcc3a3e2026abecc98d0eb3c4af80ea18ca0a69 (diff) | |
download | mitmproxy-12a70d03ad721f6a137d118b65c11851ef7b96d7.tar.gz mitmproxy-12a70d03ad721f6a137d118b65c11851ef7b96d7.tar.bz2 mitmproxy-12a70d03ad721f6a137d118b65c11851ef7b96d7.zip |
addons.view: Add a focus tracker
Diffstat (limited to 'test')
-rw-r--r-- | test/mitmproxy/addons/test_view.py | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/test/mitmproxy/addons/test_view.py b/test/mitmproxy/addons/test_view.py index cff99621..527464ad 100644 --- a/test/mitmproxy/addons/test_view.py +++ b/test/mitmproxy/addons/test_view.py @@ -161,3 +161,58 @@ def test_signals(): clearrec() v.update(f) assert not any([rec_add, rec_update, rec_remove, rec_refresh]) + + +def test_focus(): + # Special case - initialising with a view that already contains data + v = view.View() + v.add(tft()) + f = view.Focus(v) + assert f.index is 0 + assert f.focusflow is v[0] + + # Start empty + v = view.View() + f = view.Focus(v) + assert f.index is None + assert f.focusflow is None + + v.add(tft(start=1)) + assert f.index == 0 + assert f.focusflow is v[0] + + v.add(tft(start=0)) + assert f.index == 1 + assert f.focusflow is v[1] + + v.add(tft(start=2)) + assert f.index == 1 + assert f.focusflow is v[1] + + v.remove(v[1]) + assert f.index == 1 + assert f.focusflow is v[1] + + v.remove(v[1]) + assert f.index == 0 + assert f.focusflow is v[0] + + v.remove(v[0]) + assert f.index is None + assert f.focusflow is None + + v.add(tft(method="get", start=0)) + v.add(tft(method="get", start=1)) + v.add(tft(method="put", start=2)) + v.add(tft(method="get", start=3)) + + f.focusflow = v[2] + assert f.focusflow.request.method == "PUT" + + filt = flowfilter.parse("~m get") + v.set_filter(filt) + assert f.index == 0 + + filt = flowfilter.parse("~m oink") + v.set_filter(filt) + assert f.index is None |