diff options
Diffstat (limited to 'test/test_script.py')
-rw-r--r-- | test/test_script.py | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/test/test_script.py b/test/test_script.py new file mode 100644 index 00000000..f6cfcced --- /dev/null +++ b/test/test_script.py @@ -0,0 +1,51 @@ +import os +from libmproxy import script, flow +import libpry + +class uScript(libpry.AutoTree): + def test_simple(self): + s = flow.State() + fm = flow.FlowMaster(None, s) + + p = script.Script(os.path.join("scripts", "a.py"), fm) + p.load() + assert "here" in p.ns + assert p.run("here") == (True, 1) + assert p.run("here") == (True, 2) + + ret = p.run("errargs") + assert not ret[0] + assert len(ret[1]) == 2 + + # Check reload + p.load() + assert p.run("here") == (True, 1) + + def test_err(self): + s = flow.State() + fm = flow.FlowMaster(None, s) + + s = script.Script("nonexistent", fm) + libpry.raises( + script.ScriptError, + s.load + ) + + s = script.Script(os.path.join("scripts", "syntaxerr.py"), fm) + libpry.raises( + script.ScriptError, + s.load + ) + + s = script.Script(os.path.join("scripts", "loaderr.py"), fm) + libpry.raises( + script.ScriptError, + s.load + ) + + + +tests = [ + uScript(), +] + |