Coverage for /Users/davegaeddert/Development/dropseed/plain/plain/plain/http/cookie.py: 100%
11 statements
« prev ^ index » next coverage.py v7.6.1, created at 2024-10-16 22:04 -0500
« prev ^ index » next coverage.py v7.6.1, created at 2024-10-16 22:04 -0500
1from http import cookies
4def parse_cookie(cookie):
5 """
6 Return a dictionary parsed from a `Cookie:` header string.
7 """
8 cookiedict = {}
9 for chunk in cookie.split(";"):
10 if "=" in chunk:
11 key, val = chunk.split("=", 1)
12 else:
13 # Assume an empty name per
14 # https://bugzilla.mozilla.org/show_bug.cgi?id=169091
15 key, val = "", chunk
16 key, val = key.strip(), val.strip()
17 if key or val:
18 # unquote using Python's algorithm.
19 cookiedict[key] = cookies._unquote(val)
20 return cookiedict