aboutsummaryrefslogtreecommitdiffstats
path: root/test/netlib/test_version_check.py
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2016-02-15 16:34:22 +0100
committerMaximilian Hils <git@maximilianhils.com>2016-02-15 16:34:22 +0100
commitd7158f975e671b78f0a064dd873cfa7805667528 (patch)
tree9b40f263c4f613a0dc49f5d8628c371164afd546 /test/netlib/test_version_check.py
parent5fe473fb431699c71aa74bb715c2cb5b0500f044 (diff)
downloadmitmproxy-d7158f975e671b78f0a064dd873cfa7805667528.tar.gz
mitmproxy-d7158f975e671b78f0a064dd873cfa7805667528.tar.bz2
mitmproxy-d7158f975e671b78f0a064dd873cfa7805667528.zip
move tests into shared folder
Diffstat (limited to 'test/netlib/test_version_check.py')
-rw-r--r--test/netlib/test_version_check.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/test/netlib/test_version_check.py b/test/netlib/test_version_check.py
new file mode 100644
index 00000000..ec2396fe
--- /dev/null
+++ b/test/netlib/test_version_check.py
@@ -0,0 +1,38 @@
+from io import StringIO
+import mock
+from netlib import version_check, version
+
+
+@mock.patch("sys.exit")
+def test_check_mitmproxy_version(sexit):
+ fp = StringIO()
+ version_check.check_mitmproxy_version(version.IVERSION, fp=fp)
+ assert not fp.getvalue()
+ assert not sexit.called
+
+ b = (version.IVERSION[0] - 1, version.IVERSION[1])
+ version_check.check_mitmproxy_version(b, fp=fp)
+ assert fp.getvalue()
+ assert sexit.called
+
+
+@mock.patch("sys.exit")
+def test_check_pyopenssl_version(sexit):
+ fp = StringIO()
+ version_check.check_pyopenssl_version(fp=fp)
+ assert not fp.getvalue()
+ assert not sexit.called
+
+ version_check.check_pyopenssl_version((9999,), fp=fp)
+ assert "outdated" in fp.getvalue()
+ assert sexit.called
+
+
+@mock.patch("sys.exit")
+@mock.patch("OpenSSL.__version__")
+def test_unparseable_pyopenssl_version(version, sexit):
+ version.split.return_value = ["foo", "bar"]
+ fp = StringIO()
+ version_check.check_pyopenssl_version(fp=fp)
+ assert "Cannot parse" in fp.getvalue()
+ assert not sexit.called