diff --git a/httpx/_models.py b/httpx/_models.py index 2cc86321a4..389c68ad77 100644 --- a/httpx/_models.py +++ b/httpx/_models.py @@ -1092,9 +1092,7 @@ def __init__(self, cookies: CookieTypes | None = None) -> None: for key, value in cookies: self.set(key, value) elif isinstance(cookies, Cookies): - self.jar = CookieJar() - for cookie in cookies.jar: - self.jar.set_cookie(cookie) + self.jar = cookies.jar else: self.jar = cookies diff --git a/tests/models/test_cookies.py b/tests/models/test_cookies.py index f7abe11ad4..6c7e79cf4f 100644 --- a/tests/models/test_cookies.py +++ b/tests/models/test_cookies.py @@ -1,4 +1,5 @@ import http +from http.cookiejar import CookieJar, DefaultCookiePolicy import pytest @@ -96,3 +97,14 @@ def test_cookies_repr(): "," " ]>" ) + +def test_cookies_policy(): + jar = CookieJar() + jar.set_policy( + DefaultCookiePolicy( + strict_domain=True, + ) + ) + cookies = httpx.Cookies(jar) + new_cookies = httpx.Cookies(cookies) + assert new_cookies.jar._policy.strict_domain is True