diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2016-12-03 11:54:04 +1300 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2016-12-08 10:21:06 +1300 |
commit | c062e302e9281e4d8e216595b14fb089ed784b4e (patch) | |
tree | 7c36e63278d03cdf01aba3dcbcbfca95fbef0087 /test | |
parent | 0c091bd92b9f0f59c65cf392f334719294ef397e (diff) | |
download | mitmproxy-c062e302e9281e4d8e216595b14fb089ed784b4e.tar.gz mitmproxy-c062e302e9281e4d8e216595b14fb089ed784b4e.tar.bz2 mitmproxy-c062e302e9281e4d8e216595b14fb089ed784b4e.zip |
Add OptManager.subscribe, use it to clean up palettes in console
.subscribe lets you subscribe a function to a specified set of options.
Diffstat (limited to 'test')
-rw-r--r-- | test/mitmproxy/test_optmanager.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/test/mitmproxy/test_optmanager.py b/test/mitmproxy/test_optmanager.py index 345512fd..c7808391 100644 --- a/test/mitmproxy/test_optmanager.py +++ b/test/mitmproxy/test_optmanager.py @@ -104,6 +104,29 @@ def test_toggler(): o.toggler("nonexistent") +class Rec(): + def __init__(self): + self.called = None + + def __call__(self, *args, **kwargs): + self.called = (args, kwargs) + + +def test_subscribe(): + o = TO() + r = Rec() + o.subscribe(r, ["two"]) + o.one = "foo" + assert not r.called + o.two = "foo" + assert r.called + + assert len(o.changed.receivers) == 1 + del r + o.two = "bar" + assert len(o.changed.receivers) == 0 + + def test_rollback(): o = TO(one="two") |