aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2016-06-04 16:29:54 +1200
committerAldo Cortesi <aldo@nullcube.com>2016-06-04 19:07:27 +1200
commitd5532319c1fef4b10146f8643f9a02a7f948d446 (patch)
treeeb188d656676463dc3365e72d7b1d282a81e063d
parentaf63a3e064f51db986a84dfc38bd1b136812eae8 (diff)
downloadmitmproxy-d5532319c1fef4b10146f8643f9a02a7f948d446.tar.gz
mitmproxy-d5532319c1fef4b10146f8643f9a02a7f948d446.tar.bz2
mitmproxy-d5532319c1fef4b10146f8643f9a02a7f948d446.zip
Basic ConsoleMaster tests, based on mastertester
-rw-r--r--mitmproxy/console/master.py13
-rw-r--r--test/mitmproxy/console/test_master.py (renamed from test/mitmproxy/console/test_console.py)14
2 files changed, 21 insertions, 6 deletions
diff --git a/mitmproxy/console/master.py b/mitmproxy/console/master.py
index 63692ec0..5fd51f4b 100644
--- a/mitmproxy/console/master.py
+++ b/mitmproxy/console/master.py
@@ -206,7 +206,8 @@ class Options(object):
"nopop",
"palette",
"palette_transparent",
- "no_mouse"
+ "no_mouse",
+ "outfile",
]
def __init__(self, **kwargs):
@@ -225,11 +226,13 @@ class ConsoleMaster(flow.FlowMaster):
self.stream_path = None
self.options = options
- for i in options.replacements:
- self.replacehooks.add(*i)
+ if options.replacements:
+ for i in options.replacements:
+ self.replacehooks.add(*i)
- for i in options.setheaders:
- self.setheaders.add(*i)
+ if options.setheaders:
+ for i in options.setheaders:
+ self.setheaders.add(*i)
r = self.set_intercept(options.intercept)
if r:
diff --git a/test/mitmproxy/console/test_console.py b/test/mitmproxy/console/test_master.py
index 52d2c49a..33261c28 100644
--- a/test/mitmproxy/console/test_console.py
+++ b/test/mitmproxy/console/test_master.py
@@ -4,7 +4,7 @@ import netlib.tutils
from mitmproxy import console
from mitmproxy.console import common
-from .. import tutils
+from .. import tutils, mastertest
class TestConsoleState:
@@ -108,3 +108,15 @@ def test_format_keyvals():
def test_options():
assert console.master.Options(kill=True)
+
+
+class TestMaster(mastertest.MasterTest):
+ def mkmaster(self, filt, **options):
+ o = console.master.Options(filtstr=filt, **options)
+ return console.master.ConsoleMaster(None, o)
+
+ def test_basic(self):
+ m = self.mkmaster(None)
+ for i in (1, 2, 3):
+ self.dummy_cycle(m, 1, "")
+ assert len(m.state.flows) == i