aboutsummaryrefslogtreecommitdiffstats
path: root/test/netlib/http/test_cookies.py
diff options
context:
space:
mode:
authorShadab Zafar <dufferzafar0@gmail.com>2016-09-27 21:05:18 +0530
committerShadab Zafar <dufferzafar0@gmail.com>2016-09-27 21:28:54 +0530
commit5383c15ff2db01fd8aad9d3ef1a9b5f1b0a361cf (patch)
tree79c256f0a0f98b941d9d6ef5d599cc2d99013ed2 /test/netlib/http/test_cookies.py
parent6e6ed35e3ec509ca443033c953d95a11ce1338c2 (diff)
downloadmitmproxy-5383c15ff2db01fd8aad9d3ef1a9b5f1b0a361cf.tar.gz
mitmproxy-5383c15ff2db01fd8aad9d3ef1a9b5f1b0a361cf.tar.bz2
mitmproxy-5383c15ff2db01fd8aad9d3ef1a9b5f1b0a361cf.zip
Add tests for comma separated Set-Cookies
Diffstat (limited to 'test/netlib/http/test_cookies.py')
-rw-r--r--test/netlib/http/test_cookies.py57
1 files changed, 47 insertions, 10 deletions
diff --git a/test/netlib/http/test_cookies.py b/test/netlib/http/test_cookies.py
index 5657f2f9..905f549c 100644
--- a/test/netlib/http/test_cookies.py
+++ b/test/netlib/http/test_cookies.py
@@ -187,6 +187,11 @@ def test_parse_set_cookie_pairs():
def test_parse_set_cookie_header():
+ def set_cookie_equal(obs, exp):
+ assert obs[0] == exp[0]
+ assert obs[1] == exp[1]
+ assert obs[2].items(multi=True) == exp[2]
+
vals = [
[
"", None
@@ -196,29 +201,61 @@ def test_parse_set_cookie_header():
],
[
"one=uno",
- [("one", "uno", ())]
+ [
+ ("one", "uno", ())
+ ]
],
[
"one=uno; foo=bar",
- [("one", "uno", (("foo", "bar"),))]
+ [
+ ("one", "uno", (("foo", "bar"),))
+ ]
],
[
"one=uno; foo=bar; foo=baz",
- [("one", "uno", (("foo", "bar"), ("foo", "baz")))]
+ [
+ ("one", "uno", (("foo", "bar"), ("foo", "baz")))
+ ]
+ ],
+ # Comma Separated Variant of Set-Cookie Headers
+ [
+ "foo=bar, doo=dar",
+ [
+ ("foo", "bar", ()),
+ ("doo", "dar", ()),
+ ]
+ ],
+ [
+ "foo=bar; path=/, doo=dar; roo=rar; zoo=zar",
+ [
+ ("foo", "bar", (("path", "/"),)),
+ ("doo", "dar", (("roo", "rar"), ("zoo", "zar"))),
+ ]
+ ],
+ [
+ "foo=bar; expires=Mon, 24 Aug 2037",
+ [
+ ("foo", "bar", (("expires", "Mon, 24 Aug 2037"),)),
+ ]
+ ],
+ [
+ "foo=bar; expires=Mon, 24 Aug 2037 00:00:00 GMT, doo=dar",
+ [
+ ("foo", "bar", (("expires", "Mon, 24 Aug 2037 00:00:00 GMT"),)),
+ ("doo", "dar", ()),
+ ]
],
]
for s, expected in vals:
ret = cookies.parse_set_cookie_header(s)
if expected:
- assert ret[0][0] == expected[0][0]
- assert ret[0][1] == expected[0][1]
- assert ret[0][2].items(multi=True) == expected[0][2]
+ for i in range(len(expected)):
+ set_cookie_equal(ret[i], expected[i])
- s2 = cookies.format_set_cookie_header(*ret[0])
+ s2 = cookies.format_set_cookie_header(ret)
ret2 = cookies.parse_set_cookie_header(s2)
- assert ret2[0][0] == expected[0][0]
- assert ret2[0][1] == expected[0][1]
- assert ret2[0][2].items(multi=True) == expected[0][2]
+ for i in range(len(expected)):
+ set_cookie_equal(ret2[i], expected[i])
else:
assert ret is None