File: aiohttp-3.12.7.patch

package info (click to toggle)
python-aiohttp-session 2.12.1-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 512 kB
  • sloc: python: 2,540; makefile: 198
file content (49 lines) | stat: -rw-r--r-- 1,714 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
From: "J. Nick Koston" <nick@koston.org>
Date: Tue, 10 Jun 2025 00:46:42 -0500
Subject: make test more robust

Origin: backport, https://github.com/aio-libs/aiohttp-session/pull/1099
Bug-Debian: https://bugs.debian.org/1117423
Last-Update: 2025-10-13
---
 tests/test_cookie_storage.py | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/tests/test_cookie_storage.py b/tests/test_cookie_storage.py
index 8296663..ac162c9 100644
--- a/tests/test_cookie_storage.py
+++ b/tests/test_cookie_storage.py
@@ -1,5 +1,6 @@
 import json
 import time
+from http.cookies import SimpleCookie
 from typing import Any, Dict, MutableMapping, cast
 
 from aiohttp import web
@@ -97,10 +98,22 @@ async def test_clear_cookie_on_session_invalidation(
     make_cookie(client, {"a": 1, "b": 2})
     resp = await client.get("/")
     assert resp.status == 200
-    assert (
-        'Set-Cookie: AIOHTTP_SESSION="{}"; '
-        "domain=127.0.0.1; httponly; Path=/".upper()
-    ) == resp.cookies["AIOHTTP_SESSION"].output().upper()
+
+    # Check the actual Set-Cookie header instead of resp.cookies
+    # which used to leak the cookie jar details back into the resp.cookies
+    set_cookie_header = resp.headers.get("Set-Cookie")
+    assert set_cookie_header is not None
+
+    # Parse the header
+    cookie = SimpleCookie()
+    cookie.load(set_cookie_header)
+    assert "AIOHTTP_SESSION" in cookie
+
+    # Verify the cookie was cleared (empty value)
+    morsel = cookie["AIOHTTP_SESSION"]
+    assert morsel.value == "{}"
+    assert morsel["path"] == "/"
+    assert morsel["httponly"] is True
 
 
 async def test_dont_save_not_requested_session(aiohttp_client: AiohttpClient) -> None: