summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorBojan Mihelac <bmihelac@mihelac.org>2013-02-04 16:50:15 +0100
committerTim Graham <timograham@gmail.com>2013-08-09 12:22:42 -0400
commit0cac4fbf699bb6a3de5f4a48c6e047a4dc6c2df7 (patch)
tree74724e0074079f25fed1b292d5dbeaaecc482ae5 /django
parent453915bb1272c9a9189a741e6a9b9246edfcbd03 (diff)
Fixed #18356 -- Gave the test client signals.template_rendered call a unique dispatch_uid
This prevents the test client context from being lost when the client is used in a nested fashion.
Diffstat (limited to 'django')
-rw-r--r--django/test/client.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/django/test/client.py b/django/test/client.py
index 754d4d73f8..ae7d7a5fb7 100644
--- a/django/test/client.py
+++ b/django/test/client.py
@@ -406,7 +406,8 @@ class Client(RequestFactory):
# callback function.
data = {}
on_template_render = curry(store_rendered_templates, data)
- signals.template_rendered.connect(on_template_render, dispatch_uid="template-render")
+ signal_uid = "template-render-%s" % id(request)
+ signals.template_rendered.connect(on_template_render, dispatch_uid=signal_uid)
# Capture exceptions created by the handler.
got_request_exception.connect(self.store_exc_info, dispatch_uid="request-exception")
try:
@@ -452,7 +453,7 @@ class Client(RequestFactory):
return response
finally:
- signals.template_rendered.disconnect(dispatch_uid="template-render")
+ signals.template_rendered.disconnect(dispatch_uid=signal_uid)
got_request_exception.disconnect(dispatch_uid="request-exception")
def get(self, path, data={}, follow=False, **extra):