aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/mitmproxy/addons/test_replace.py69
-rw-r--r--test/mitmproxy/net/http/test_message.py6
-rw-r--r--test/mitmproxy/test_certs.py1
-rw-r--r--test/mitmproxy/types/test_multidict.py5
4 files changed, 37 insertions, 44 deletions
diff --git a/test/mitmproxy/addons/test_replace.py b/test/mitmproxy/addons/test_replace.py
index 2311641a..7d590b35 100644
--- a/test/mitmproxy/addons/test_replace.py
+++ b/test/mitmproxy/addons/test_replace.py
@@ -1,6 +1,5 @@
import pytest
-from .. import tservers
from mitmproxy.addons import replace
from mitmproxy.test import taddons
from mitmproxy.test import tflow
@@ -32,7 +31,7 @@ class TestReplace:
with taddons.context() as tctx:
tctx.configure(
r,
- replacements = [
+ replacements=[
"/~q/foo/bar",
"/~s/foo/bar",
]
@@ -47,53 +46,57 @@ class TestReplace:
r.response(f)
assert f.response.content == b"bar"
-
-class TestUpstreamProxy(tservers.HTTPUpstreamProxyTest):
- ssl = False
-
def test_order(self):
- sa = replace.Replace()
- self.proxy.tmaster.addons.add(sa)
-
- self.proxy.tmaster.options.replacements = [
- "/~q/foo/bar",
- "/~q/bar/baz",
- "/~q/foo/oh noes!",
- "/~s/baz/ORLY"
- ]
- p = self.pathoc()
- with p.connect():
- req = p.request("get:'%s/p/418:b\"foo\"'" % self.server.urlbase)
- assert req.content == b"ORLY"
- assert req.status_code == 418
+ r = replace.Replace()
+ with taddons.context() as tctx:
+ tctx.configure(
+ r,
+ replacements=[
+ "/foo/bar",
+ "/bar/baz",
+ "/foo/oh noes!",
+ "/bar/oh noes!",
+ ]
+ )
+ f = tflow.tflow()
+ f.request.content = b"foo"
+ r.request(f)
+ assert f.request.content == b"baz"
class TestReplaceFile:
def test_simple(self, tmpdir):
- r = replace.ReplaceFile()
- rp = tmpdir.join("replacement")
- rp.write("bar")
+ r = replace.Replace()
with taddons.context() as tctx:
+ tmpfile = tmpdir.join("replacement")
+ tmpfile.write("bar")
tctx.configure(
r,
- replacement_files = [
- "/~q/foo/" + str(rp),
- "/~s/foo/" + str(rp),
- "/~b nonexistent/nonexistent/nonexistent",
- ]
+ replacements=["/~q/foo/@" + str(tmpfile)]
)
f = tflow.tflow()
f.request.content = b"foo"
r.request(f)
assert f.request.content == b"bar"
- f = tflow.tflow(resp=True)
- f.response.content = b"foo"
- r.response(f)
- assert f.response.content == b"bar"
+ def test_nonexistent(self, tmpdir):
+ r = replace.Replace()
+ with taddons.context() as tctx:
+ with pytest.raises(Exception, match="Invalid file path"):
+ tctx.configure(
+ r,
+ replacements=["/~q/foo/@nonexistent"]
+ )
+ tmpfile = tmpdir.join("replacement")
+ tmpfile.write("bar")
+ tctx.configure(
+ r,
+ replacements=["/~q/foo/@" + str(tmpfile)]
+ )
+ tmpfile.remove()
f = tflow.tflow()
- f.request.content = b"nonexistent"
+ f.request.content = b"foo"
assert not tctx.master.event_log
r.request(f)
assert tctx.master.event_log
diff --git a/test/mitmproxy/net/http/test_message.py b/test/mitmproxy/net/http/test_message.py
index 034bd600..b75bc7c2 100644
--- a/test/mitmproxy/net/http/test_message.py
+++ b/test/mitmproxy/net/http/test_message.py
@@ -38,14 +38,12 @@ def _test_decoded_attr(message, attr):
class TestMessageData:
- def test_eq_ne(self):
+ def test_eq(self):
data = tutils.tresp(timestamp_start=42, timestamp_end=42).data
same = tutils.tresp(timestamp_start=42, timestamp_end=42).data
assert data == same
- assert not data != same
other = tutils.tresp(content=b"foo").data
- assert not data == other
assert data != other
assert data != 0
@@ -61,10 +59,8 @@ class TestMessage:
resp = tutils.tresp(timestamp_start=42, timestamp_end=42)
same = tutils.tresp(timestamp_start=42, timestamp_end=42)
assert resp == same
- assert not resp != same
other = tutils.tresp(timestamp_start=0, timestamp_end=0)
- assert not resp == other
assert resp != other
assert resp != 0
diff --git a/test/mitmproxy/test_certs.py b/test/mitmproxy/test_certs.py
index 2d12c370..88c49561 100644
--- a/test/mitmproxy/test_certs.py
+++ b/test/mitmproxy/test_certs.py
@@ -160,7 +160,6 @@ class TestSSLCert:
assert c2.to_pem()
assert c2.has_expired is not None
- assert not c1 == c2
assert c1 != c2
def test_err_broken_sans(self):
diff --git a/test/mitmproxy/types/test_multidict.py b/test/mitmproxy/types/test_multidict.py
index 7d38f6ba..c76cd753 100644
--- a/test/mitmproxy/types/test_multidict.py
+++ b/test/mitmproxy/types/test_multidict.py
@@ -93,11 +93,6 @@ class TestMultiDict:
md1.fields = md1.fields[1:] + md1.fields[:1]
assert not (md1 == md2)
- def test_ne(self):
- assert not TMultiDict() != TMultiDict()
- assert TMultiDict() != self._multi()
- assert TMultiDict() != 42
-
def test_hash(self):
"""
If a class defines mutable objects and implements an __eq__() method,