summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Forbes <tom@tomforb.es>2020-04-18 21:59:06 +0100
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2020-04-20 06:17:57 +0200
commit141ab6bc6d93d3a91259896f6ea3b7485172df88 (patch)
treea44f0d7f66f844f6d7c1c0265feb651820272b6c
parent537d422942b53bc0a2b6a51968f379c0de07793c (diff)
Refs #29069 -- Added test for calling request_finished signal by static file responses.
Fixed in 41a3b3d18647b258331104520e76f977406c590d.
-rw-r--r--tests/builtin_server/tests.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/tests/builtin_server/tests.py b/tests/builtin_server/tests.py
index 71e261ddcc..7c0a889432 100644
--- a/tests/builtin_server/tests.py
+++ b/tests/builtin_server/tests.py
@@ -1,10 +1,11 @@
import sys
import traceback
from io import BytesIO
-from unittest import TestCase
+from unittest import TestCase, mock
from wsgiref import simple_server
from django.core.servers.basehttp import get_internal_wsgi_application
+from django.core.signals import request_finished
from django.test import RequestFactory, override_settings
from .views import FILE_RESPONSE_HOLDER
@@ -115,6 +116,15 @@ class WSGIFileWrapperTests(TestCase):
self.assertIs(buf2.closed, True)
FILE_RESPONSE_HOLDER.clear()
+ @override_settings(ROOT_URLCONF='builtin_server.urls')
+ def test_file_response_call_request_finished(self):
+ env = RequestFactory().get('/fileresponse/').environ
+ handler = FileWrapperHandler(None, BytesIO(), BytesIO(), env)
+ with mock.MagicMock() as signal_handler:
+ request_finished.connect(signal_handler)
+ handler.run(get_internal_wsgi_application())
+ self.assertEqual(signal_handler.call_count, 1)
+
class WriteChunkCounterHandler(ServerHandler):
"""