diff options
author | Maximilian Hils <git@maximilianhils.com> | 2017-03-15 14:04:58 +0100 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2017-03-15 14:06:00 +0100 |
commit | 65c4a3cf1d3359acfeeb94449b573b7cde650f1c (patch) | |
tree | 2be7774cfca7fee8a297522180dc3ca06f0257bc /test/mitmproxy/net/http/test_request.py | |
parent | ec5d9cbd2b224d11e0e8df912b19decbd149d1b9 (diff) | |
download | mitmproxy-65c4a3cf1d3359acfeeb94449b573b7cde650f1c.tar.gz mitmproxy-65c4a3cf1d3359acfeeb94449b573b7cde650f1c.tar.bz2 mitmproxy-65c4a3cf1d3359acfeeb94449b573b7cde650f1c.zip |
add Request.make
Diffstat (limited to 'test/mitmproxy/net/http/test_request.py')
-rw-r--r-- | test/mitmproxy/net/http/test_request.py | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/test/mitmproxy/net/http/test_request.py b/test/mitmproxy/net/http/test_request.py index 90ec31fe..ce49002c 100644 --- a/test/mitmproxy/net/http/test_request.py +++ b/test/mitmproxy/net/http/test_request.py @@ -1,7 +1,7 @@ from unittest import mock import pytest -from mitmproxy.net.http import Headers +from mitmproxy.net.http import Headers, Request from mitmproxy.test.tutils import treq from .test_message import _test_decoded_attr, _test_passthrough_attr @@ -35,6 +35,32 @@ class TestRequestCore: request.host = None assert repr(request) == "Request(GET /path)" + def test_make(self): + r = Request.make("GET", "https://example.com/") + assert r.method == "GET" + assert r.scheme == "https" + assert r.host == "example.com" + assert r.port == 443 + assert r.path == "/" + + r = Request.make("GET", "https://example.com/", "content", {"Foo": "bar"}) + assert r.content == b"content" + assert r.headers["content-length"] == "7" + assert r.headers["Foo"] == "bar" + + Request.make("GET", "https://example.com/", content=b"content") + with pytest.raises(TypeError): + Request.make("GET", "https://example.com/", content=42) + + r = Request.make("GET", "https://example.com/", headers=[(b"foo", b"bar")]) + assert r.headers["foo"] == "bar" + + r = Request.make("GET", "https://example.com/", headers=({"foo": "baz"})) + assert r.headers["foo"] == "baz" + + with pytest.raises(TypeError): + Request.make("GET", "https://example.com/", headers=42) + def test_replace(self): r = treq() r.path = b"foobarfoo" |