1
0
mirror of https://github.com/django/django.git synced 2025-06-22 20:09:13 +00:00

Refs #36467 -- Added test for Set-Cookie header values in ASGIHandler.

This commit is contained in:
Sarah Boyce 2025-06-18 08:55:15 +02:00
parent 1520870c4a
commit 1cd91d5d4b
2 changed files with 17 additions and 0 deletions

View File

@ -78,6 +78,16 @@ class ASGITest(SimpleTestCase):
# Allow response.close() to finish.
await communicator.wait()
async def test_asgi_cookies(self):
application = get_asgi_application()
scope = self.async_request_factory._base_scope(path="/cookie/")
communicator = ApplicationCommunicator(application, scope)
await communicator.send_input({"type": "http.request"})
response_start = await communicator.receive_output()
self.assertIn((b"Set-Cookie", b"key=value; Path=/"), response_start["headers"])
# Allow response.close() to finish.
await communicator.wait()
# Python's file API is not async compatible. A third-party library such
# as https://github.com/Tinche/aiofiles allows passing the file to
# FileResponse as an async iterator. With a sync iterator

View File

@ -25,6 +25,12 @@ def hello_meta(request):
)
def hello_cookie(request):
response = HttpResponse("Hello World!")
response.set_cookie("key", "value")
return response
def sync_waiter(request):
with sync_waiter.lock:
sync_waiter.active_threads.add(threading.current_thread())
@ -61,6 +67,7 @@ test_filename = __file__
urlpatterns = [
path("", hello),
path("cookie/", hello_cookie),
path("file/", lambda x: FileResponse(open(test_filename, "rb"))),
path("meta/", hello_meta),
path("post/", post_echo),