diff options
author | Ujjwal Verma <ujjwalverma1111@gmail.com> | 2017-06-12 01:32:58 +0530 |
---|---|---|
committer | Ujjwal Verma <ujjwalverma1111@gmail.com> | 2017-06-12 01:32:58 +0530 |
commit | 4587b54aed12a74ec3ab96c88453c952792e2bff (patch) | |
tree | f5f18732819023db907e8fd6a7f3d636f79aeecb | |
parent | c03f14cba6a84c03c7f06bbe0f261da953f4f4fa (diff) | |
download | mitmproxy-4587b54aed12a74ec3ab96c88453c952792e2bff.tar.gz mitmproxy-4587b54aed12a74ec3ab96c88453c952792e2bff.tar.bz2 mitmproxy-4587b54aed12a74ec3ab96c88453c952792e2bff.zip |
tests for Proxy config
-rw-r--r-- | setup.cfg | 1 | ||||
-rw-r--r-- | test/mitmproxy/proxy/test_config.py | 39 |
2 files changed, 38 insertions, 2 deletions
@@ -22,7 +22,6 @@ exclude_lines = [tool:full_coverage] exclude = mitmproxy/proxy/protocol/ - mitmproxy/proxy/config.py mitmproxy/proxy/root_context.py mitmproxy/proxy/server.py mitmproxy/tools/ diff --git a/test/mitmproxy/proxy/test_config.py b/test/mitmproxy/proxy/test_config.py index 777ab4dd..a7da980b 100644 --- a/test/mitmproxy/proxy/test_config.py +++ b/test/mitmproxy/proxy/test_config.py @@ -1 +1,38 @@ -# TODO: write tests +import pytest + +from mitmproxy import options +from mitmproxy import exceptions +from mitmproxy.proxy.config import ProxyConfig +from mitmproxy.test import tutils + + +class TestProxyConfig: + def test_upstream_cert_insecure(self): + opts = options.Options() + opts.add_upstream_certs_to_client_chain = True + with pytest.raises(exceptions.OptionsError, match="verify-upstream-cert"): + ProxyConfig(opts) + + def test_invalid_cadir(self): + opts = options.Options() + opts.cadir = "foo" + with pytest.raises(exceptions.OptionsError, match="parent directory does not exist"): + ProxyConfig(opts) + + def test_invalid_client_certs(self): + opts = options.Options() + opts.client_certs = "foo" + with pytest.raises(exceptions.OptionsError, match="certificate path does not exist"): + ProxyConfig(opts) + + def test_valid_client_certs(self): + opts = options.Options() + opts.client_certs = tutils.test_data.path("mitmproxy/data/clientcert/") + p = ProxyConfig(opts) + assert p.client_certs + + def test_invalid_certificate(self): + opts = options.Options() + opts.certs = [tutils.test_data.path("mitmproxy/data/dumpfile-011")] + with pytest.raises(exceptions.OptionsError, match="Invalid certificate format"): + ProxyConfig(opts) |