diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2016-12-08 16:12:40 +1300 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2016-12-08 16:12:40 +1300 |
commit | e943147fc392383ada7607124e84b1a7db4d4b28 (patch) | |
tree | 4834a0bc786f7e6b604948a967e58c7cbe42fb10 /test | |
parent | fdd1e23875f2d56a1461444f0d77ffdd23b9256a (diff) | |
download | mitmproxy-e943147fc392383ada7607124e84b1a7db4d4b28.tar.gz mitmproxy-e943147fc392383ada7607124e84b1a7db4d4b28.tar.bz2 mitmproxy-e943147fc392383ada7607124e84b1a7db4d4b28.zip |
options: add a merge method to assimilate options
Fixes #953
Diffstat (limited to 'test')
-rw-r--r-- | test/mitmproxy/addons/test_script.py | 4 | ||||
-rw-r--r-- | test/mitmproxy/test_optmanager.py | 18 | ||||
-rw-r--r-- | test/mitmproxy/test_proxy.py | 6 |
3 files changed, 23 insertions, 5 deletions
diff --git a/test/mitmproxy/addons/test_script.py b/test/mitmproxy/addons/test_script.py index a41f6103..06463fa3 100644 --- a/test/mitmproxy/addons/test_script.py +++ b/test/mitmproxy/addons/test_script.py @@ -64,10 +64,10 @@ def test_reloadhandler(): class TestParseCommand: def test_empty_command(self): - with tutils.raises(exceptions.AddonError): + with tutils.raises(exceptions.OptionsError): script.parse_command("") - with tutils.raises(exceptions.AddonError): + with tutils.raises(exceptions.OptionsError): script.parse_command(" ") def test_no_script_file(self): diff --git a/test/mitmproxy/test_optmanager.py b/test/mitmproxy/test_optmanager.py index c6eb2534..9e938703 100644 --- a/test/mitmproxy/test_optmanager.py +++ b/test/mitmproxy/test_optmanager.py @@ -220,3 +220,21 @@ def test_saving(): o.load_paths(dst) assert o.three == "foo" + + +class TM(optmanager.OptManager): + def __init__(self, one="one", two=["foo"], three=None): + self.one = one + self.two = two + self.three = three + super().__init__() + + +def test_merge(): + m = TM() + m.merge(dict(one="two")) + assert m.one == "two" + m.merge(dict(one=None)) + assert m.one == "two" + m.merge(dict(two=["bar"])) + assert m.two == ["foo", "bar"] diff --git a/test/mitmproxy/test_proxy.py b/test/mitmproxy/test_proxy.py index 91da47a0..0d63f147 100644 --- a/test/mitmproxy/test_proxy.py +++ b/test/mitmproxy/test_proxy.py @@ -5,7 +5,6 @@ import argparse from OpenSSL import SSL from mitmproxy.tools import cmdline -from mitmproxy.tools import main from mitmproxy import options from mitmproxy.proxy import ProxyConfig from mitmproxy import connections @@ -76,8 +75,9 @@ class TestProcessProxyOptions: parser = MockParser() cmdline.common_options(parser) args = parser.parse_args(args=args) - opts = cmdline.get_common_options(args) - pconf = config.ProxyConfig(options.Options(**main.notnone(opts))) + opts = options.Options() + opts.merge(cmdline.get_common_options(args)) + pconf = config.ProxyConfig(opts) return parser, pconf def assert_err(self, err, *args): |