aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_flow.py
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2013-06-13 16:04:04 +0200
committerMaximilian Hils <git@maximilianhils.com>2013-06-13 16:09:38 +0200
commit2b4af8d4756bc4eef613ec2cdf81a97d3952150b (patch)
tree514425c6f9bfee6acdef2d74ecf49ccff2ed8b2d /test/test_flow.py
parentd3beaa738223947390bc66cdb649bf3cbaba6c28 (diff)
downloadmitmproxy-2b4af8d4756bc4eef613ec2cdf81a97d3952150b.tar.gz
mitmproxy-2b4af8d4756bc4eef613ec2cdf81a97d3952150b.tar.bz2
mitmproxy-2b4af8d4756bc4eef613ec2cdf81a97d3952150b.zip
add support for multiple scripts and script arguments. refs #76
Diffstat (limited to 'test/test_flow.py')
-rw-r--r--test/test_flow.py21
1 files changed, 15 insertions, 6 deletions
diff --git a/test/test_flow.py b/test/test_flow.py
index 718f3551..085801af 100644
--- a/test/test_flow.py
+++ b/test/test_flow.py
@@ -544,9 +544,11 @@ class TestFlowMaster:
fm = flow.FlowMaster(None, s)
assert not fm.load_script(tutils.test_data.path("scripts/a.py"))
assert not fm.load_script(tutils.test_data.path("scripts/a.py"))
- assert not fm.load_script(None)
+ assert not fm.unload_script(fm.scripts[0])
+ assert not fm.unload_script(fm.scripts[0])
assert fm.load_script("nonexistent")
assert "ValueError" in fm.load_script(tutils.test_data.path("scripts/starterr.py"))
+ assert len(fm.scripts) == 0
def test_replay(self):
s = flow.State()
@@ -572,20 +574,27 @@ class TestFlowMaster:
assert not fm.load_script(tutils.test_data.path("scripts/all.py"))
req = tutils.treq()
fm.handle_clientconnect(req.client_conn)
- assert fm.script.ns["log"][-1] == "clientconnect"
+ assert fm.scripts[0].ns["log"][-1] == "clientconnect"
f = fm.handle_request(req)
- assert fm.script.ns["log"][-1] == "request"
+ assert fm.scripts[0].ns["log"][-1] == "request"
resp = tutils.tresp(req)
fm.handle_response(resp)
- assert fm.script.ns["log"][-1] == "response"
+ assert fm.scripts[0].ns["log"][-1] == "response"
+ #load second script
+ assert not fm.load_script(tutils.test_data.path("scripts/all.py"))
+ assert len(fm.scripts) == 2
dc = flow.ClientDisconnect(req.client_conn)
dc.reply = controller.DummyReply()
fm.handle_clientdisconnect(dc)
- assert fm.script.ns["log"][-1] == "clientdisconnect"
+ assert fm.scripts[0].ns["log"][-1] == "clientdisconnect"
+ assert fm.scripts[1].ns["log"][-1] == "clientdisconnect"
+ #unload first script
+ fm.unload_script(fm.scripts[0])
+ assert len(fm.scripts) == 1
err = flow.Error(f.request, "msg")
err.reply = controller.DummyReply()
fm.handle_error(err)
- assert fm.script.ns["log"][-1] == "error"
+ assert fm.scripts[0].ns["log"][-1] == "error"
def test_duplicate_flow(self):
s = flow.State()