1
0
mirror of https://github.com/django/django.git synced 2024-12-22 09:05:43 +00:00

Refs #33735 -- Adjusted warning stacklevel in StreamingHttpResponse.__iter__()/__aiter__().

This commit is contained in:
Simon Charette 2024-08-09 12:48:32 -04:00 committed by nessita
parent 7e6e1c8383
commit c042fe3a74
2 changed files with 6 additions and 2 deletions

View File

@ -498,6 +498,7 @@ class StreamingHttpResponse(HttpResponseBase):
"StreamingHttpResponse must consume asynchronous iterators in order to " "StreamingHttpResponse must consume asynchronous iterators in order to "
"serve them synchronously. Use a synchronous iterator instead.", "serve them synchronously. Use a synchronous iterator instead.",
Warning, Warning,
stacklevel=2,
) )
# async iterator. Consume in async_to_sync and map back. # async iterator. Consume in async_to_sync and map back.
@ -518,6 +519,7 @@ class StreamingHttpResponse(HttpResponseBase):
"StreamingHttpResponse must consume synchronous iterators in order to " "StreamingHttpResponse must consume synchronous iterators in order to "
"serve them asynchronously. Use an asynchronous iterator instead.", "serve them asynchronously. Use an asynchronous iterator instead.",
Warning, Warning,
stacklevel=2,
) )
# sync iterator. Consume via sync_to_async and yield via async # sync iterator. Consume via sync_to_async and yield via async
# generator. # generator.

View File

@ -258,8 +258,9 @@ class HandlerRequestTests(SimpleTestCase):
"StreamingHttpResponse must consume asynchronous iterators in order to " "StreamingHttpResponse must consume asynchronous iterators in order to "
"serve them synchronously. Use a synchronous iterator instead." "serve them synchronously. Use a synchronous iterator instead."
) )
with self.assertWarnsMessage(Warning, msg): with self.assertWarnsMessage(Warning, msg) as ctx:
self.assertEqual(b"".join(list(response)), b"streaming content") self.assertEqual(b"".join(list(response)), b"streaming content")
self.assertEqual(ctx.filename, __file__)
class ScriptNameTests(SimpleTestCase): class ScriptNameTests(SimpleTestCase):
@ -350,10 +351,11 @@ class AsyncHandlerRequestTests(SimpleTestCase):
"StreamingHttpResponse must consume synchronous iterators in order to " "StreamingHttpResponse must consume synchronous iterators in order to "
"serve them asynchronously. Use an asynchronous iterator instead." "serve them asynchronously. Use an asynchronous iterator instead."
) )
with self.assertWarnsMessage(Warning, msg): with self.assertWarnsMessage(Warning, msg) as ctx:
self.assertEqual( self.assertEqual(
b"".join([chunk async for chunk in response]), b"streaming content" b"".join([chunk async for chunk in response]), b"streaming content"
) )
self.assertEqual(ctx.filename, __file__)
async def test_async_streaming(self): async def test_async_streaming(self):
response = await self.async_client.get("/async_streaming/") response = await self.async_client.get("/async_streaming/")