MCPcopy Create free account
hub / github.com/apify/impit / test_complex_cookies

Method test_complex_cookies

impit-python/test/async_client_test.py:140–193  ·  view source on GitHub ↗
(self, browser: Browser)

Source from the content-addressed store, hash-verified

138 assert cookie.has_nonstandard_attr('HttpOnly') is not None
139
140 async def test_complex_cookies(self, browser: Browser) -> None:
141 cookies_jar = CookieJar()
142
143 impit = AsyncClient(browser=browser, cookie_jar=cookies_jar, follow_redirects=True)
144
145 url = get_httpbin_url(
146 '/response-headers',
147 query={
148 'set-cookie': [
149 'basic=1; Path=/; HttpOnly; SameSite=Lax',
150 'withpath=2; Path=/html; SameSite=None',
151 'strict=3; Path=/; SameSite=Strict',
152 'secure=4; Path=/; HttpOnly; Secure; SameSite=Strict',
153 'short=5; Path=/;',
154 'domain=6; Path=/; Domain=.127.0.0.1;',
155 ]
156 },
157 )
158
159 await impit.get(url)
160
161 assert len(cookies_jar) == 6
162 for cookie in cookies_jar:
163 if cookie.name == 'basic':
164 assert cookie.value == '1'
165 assert cookie.secure is False
166 assert cookie.has_nonstandard_attr('HttpOnly') is True
167 assert cookie.get_nonstandard_attr('SameSite') == 'Lax'
168 elif cookie.name == 'withpath':
169 assert cookie.value == '2'
170 assert cookie.secure is False
171 assert cookie.get_nonstandard_attr('SameSite') == 'None'
172 assert cookie.has_nonstandard_attr('HttpOnly') is False
173 assert cookie.path == '/html'
174 elif cookie.name == 'strict':
175 assert cookie.value == '3'
176 assert cookie.secure is False
177 assert cookie.has_nonstandard_attr('HttpOnly') is False
178 assert cookie.get_nonstandard_attr('SameSite') == 'Strict'
179 elif cookie.name == 'secure':
180 assert cookie.value == '4'
181 assert cookie.secure is True
182 assert cookie.has_nonstandard_attr('HttpOnly') is True
183 assert cookie.get_nonstandard_attr('SameSite') == 'Strict'
184 elif cookie.name == 'short':
185 assert cookie.value == '5'
186 assert cookie.secure is False
187 assert cookie.has_nonstandard_attr('SameSite') is False
188 elif cookie.name == 'domain':
189 assert cookie.value == '6'
190 assert cookie.secure is False
191 # Crate cookies, ignores the starting dot in the domain
192 # but it's ok - https://www.rfc-editor.org/rfc/rfc6265#section-4.1.2.3
193 assert cookie.domain == '127.0.0.1'
194
195 @pytest.mark.asyncio
196 async def test_cookie_jar_works(self, browser: Browser) -> None:

Callers

nothing calls this directly

Calls 3

getMethod · 0.95
AsyncClientClass · 0.90
get_httpbin_urlFunction · 0.85

Tested by

no test coverage detected