aboutsummaryrefslogtreecommitdiffstats
path: root/mitmproxy/test/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'mitmproxy/test/scripts')
-rw-r--r--mitmproxy/test/scripts/a.py18
-rw-r--r--mitmproxy/test/scripts/a_helper.py4
-rw-r--r--mitmproxy/test/scripts/all.py36
-rw-r--r--mitmproxy/test/scripts/concurrent_decorator.py32
-rw-r--r--mitmproxy/test/scripts/concurrent_decorator_err.py6
-rw-r--r--mitmproxy/test/scripts/duplicate_flow.py4
-rw-r--r--mitmproxy/test/scripts/loaderr.py3
-rw-r--r--mitmproxy/test/scripts/reqerr.py2
-rw-r--r--mitmproxy/test/scripts/starterr.py3
-rw-r--r--mitmproxy/test/scripts/stream_modify.py7
-rw-r--r--mitmproxy/test/scripts/syntaxerr.py3
-rw-r--r--mitmproxy/test/scripts/tcp_stream_modify.py3
-rw-r--r--mitmproxy/test/scripts/unloaderr.py2
13 files changed, 123 insertions, 0 deletions
diff --git a/mitmproxy/test/scripts/a.py b/mitmproxy/test/scripts/a.py
new file mode 100644
index 00000000..d4272ac8
--- /dev/null
+++ b/mitmproxy/test/scripts/a.py
@@ -0,0 +1,18 @@
+from a_helper import parser
+
+var = 0
+
+
+def start(ctx, argv):
+ global var
+ var = parser.parse_args(argv[1:]).var
+
+
+def here(ctx):
+ global var
+ var += 1
+ return var
+
+
+def errargs():
+ pass
diff --git a/mitmproxy/test/scripts/a_helper.py b/mitmproxy/test/scripts/a_helper.py
new file mode 100644
index 00000000..e1f1c649
--- /dev/null
+++ b/mitmproxy/test/scripts/a_helper.py
@@ -0,0 +1,4 @@
+import argparse
+
+parser = argparse.ArgumentParser()
+parser.add_argument('--var', type=int)
diff --git a/mitmproxy/test/scripts/all.py b/mitmproxy/test/scripts/all.py
new file mode 100644
index 00000000..dad2aade
--- /dev/null
+++ b/mitmproxy/test/scripts/all.py
@@ -0,0 +1,36 @@
+log = []
+
+
+def clientconnect(ctx, cc):
+ ctx.log("XCLIENTCONNECT")
+ log.append("clientconnect")
+
+
+def serverconnect(ctx, cc):
+ ctx.log("XSERVERCONNECT")
+ log.append("serverconnect")
+
+
+def request(ctx, f):
+ ctx.log("XREQUEST")
+ log.append("request")
+
+
+def response(ctx, f):
+ ctx.log("XRESPONSE")
+ log.append("response")
+
+
+def responseheaders(ctx, f):
+ ctx.log("XRESPONSEHEADERS")
+ log.append("responseheaders")
+
+
+def clientdisconnect(ctx, cc):
+ ctx.log("XCLIENTDISCONNECT")
+ log.append("clientdisconnect")
+
+
+def error(ctx, cc):
+ ctx.log("XERROR")
+ log.append("error")
diff --git a/mitmproxy/test/scripts/concurrent_decorator.py b/mitmproxy/test/scripts/concurrent_decorator.py
new file mode 100644
index 00000000..f6feda1d
--- /dev/null
+++ b/mitmproxy/test/scripts/concurrent_decorator.py
@@ -0,0 +1,32 @@
+import time
+from libmproxy.script import concurrent
+
+
+@concurrent
+def clientconnect(context, cc):
+ context.log("clientconnect")
+
+
+@concurrent
+def serverconnect(context, sc):
+ context.log("serverconnect")
+
+
+@concurrent
+def request(context, flow):
+ time.sleep(0.1)
+
+
+@concurrent
+def response(context, flow):
+ context.log("response")
+
+
+@concurrent
+def error(context, err):
+ context.log("error")
+
+
+@concurrent
+def clientdisconnect(context, dc):
+ context.log("clientdisconnect")
diff --git a/mitmproxy/test/scripts/concurrent_decorator_err.py b/mitmproxy/test/scripts/concurrent_decorator_err.py
new file mode 100644
index 00000000..00fd8dad
--- /dev/null
+++ b/mitmproxy/test/scripts/concurrent_decorator_err.py
@@ -0,0 +1,6 @@
+from libmproxy.script import concurrent
+
+
+@concurrent
+def start(context, argv):
+ pass
diff --git a/mitmproxy/test/scripts/duplicate_flow.py b/mitmproxy/test/scripts/duplicate_flow.py
new file mode 100644
index 00000000..e13af786
--- /dev/null
+++ b/mitmproxy/test/scripts/duplicate_flow.py
@@ -0,0 +1,4 @@
+
+def request(ctx, f):
+ f = ctx.duplicate_flow(f)
+ ctx.replay_request(f)
diff --git a/mitmproxy/test/scripts/loaderr.py b/mitmproxy/test/scripts/loaderr.py
new file mode 100644
index 00000000..8dc4d56d
--- /dev/null
+++ b/mitmproxy/test/scripts/loaderr.py
@@ -0,0 +1,3 @@
+
+
+a = x
diff --git a/mitmproxy/test/scripts/reqerr.py b/mitmproxy/test/scripts/reqerr.py
new file mode 100644
index 00000000..e7c503a8
--- /dev/null
+++ b/mitmproxy/test/scripts/reqerr.py
@@ -0,0 +1,2 @@
+def request(ctx, r):
+ raise ValueError
diff --git a/mitmproxy/test/scripts/starterr.py b/mitmproxy/test/scripts/starterr.py
new file mode 100644
index 00000000..b217bdfe
--- /dev/null
+++ b/mitmproxy/test/scripts/starterr.py
@@ -0,0 +1,3 @@
+
+def start(ctx, argv):
+ raise ValueError
diff --git a/mitmproxy/test/scripts/stream_modify.py b/mitmproxy/test/scripts/stream_modify.py
new file mode 100644
index 00000000..e26d83f1
--- /dev/null
+++ b/mitmproxy/test/scripts/stream_modify.py
@@ -0,0 +1,7 @@
+def modify(chunks):
+ for chunk in chunks:
+ yield chunk.replace("foo", "bar")
+
+
+def responseheaders(context, flow):
+ flow.response.stream = modify
diff --git a/mitmproxy/test/scripts/syntaxerr.py b/mitmproxy/test/scripts/syntaxerr.py
new file mode 100644
index 00000000..219d6b84
--- /dev/null
+++ b/mitmproxy/test/scripts/syntaxerr.py
@@ -0,0 +1,3 @@
+
+
+a +
diff --git a/mitmproxy/test/scripts/tcp_stream_modify.py b/mitmproxy/test/scripts/tcp_stream_modify.py
new file mode 100644
index 00000000..93b0d5c8
--- /dev/null
+++ b/mitmproxy/test/scripts/tcp_stream_modify.py
@@ -0,0 +1,3 @@
+def tcp_message(ctx, tm):
+ if tm.sender == tm.server_conn:
+ tm.message = tm.message.replace("foo", "bar")
diff --git a/mitmproxy/test/scripts/unloaderr.py b/mitmproxy/test/scripts/unloaderr.py
new file mode 100644
index 00000000..fba02734
--- /dev/null
+++ b/mitmproxy/test/scripts/unloaderr.py
@@ -0,0 +1,2 @@
+def done(ctx):
+ raise RuntimeError()