summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2009-09-14 08:06:29 +0000
committerChris McDonough <chrism@agendaless.com>2009-09-14 08:06:29 +0000
commit032f080026c6d298d594e4a6781b3f91af066676 (patch)
tree8748ae302591bda3df5f28be902acfdde2afddc4
parent89da13b76ce3370dcf86750758d8a8d5d2960500 (diff)
downloadpyramid-032f080026c6d298d594e4a6781b3f91af066676.tar.gz
pyramid-032f080026c6d298d594e4a6781b3f91af066676.tar.bz2
pyramid-032f080026c6d298d594e4a6781b3f91af066676.zip
Provide "wrapped_view" as well in the outer wrapper request.
-rw-r--r--repoze/bfg/tests/test_zcml.py6
-rw-r--r--repoze/bfg/zcml.py1
2 files changed, 6 insertions, 1 deletions
diff --git a/repoze/bfg/tests/test_zcml.py b/repoze/bfg/tests/test_zcml.py
index a92625fed..dcf6e17f8 100644
--- a/repoze/bfg/tests/test_zcml.py
+++ b/repoze/bfg/tests/test_zcml.py
@@ -1325,9 +1325,13 @@ class TestDeriveView(unittest.TestCase):
from webob import Response
from zope.component import getSiteManager
from repoze.bfg.interfaces import IView
+ inner_response = Response('OK')
def inner_view(context, request):
- return Response('OK')
+ return inner_response
def outer_view(context, request):
+ self.assertEqual(request.wrapped_response, inner_response)
+ self.assertEqual(request.wrapped_body, inner_response.body)
+ self.assertEqual(request.wrapped_view, inner_view)
return Response('outer ' + request.wrapped_body)
sm = getSiteManager()
sm.registerAdapter(outer_view, (None, None), IView, 'owrap')
diff --git a/repoze/bfg/zcml.py b/repoze/bfg/zcml.py
index 40226b1d1..bca28d47e 100644
--- a/repoze/bfg/zcml.py
+++ b/repoze/bfg/zcml.py
@@ -261,6 +261,7 @@ def owrap_view(view, wrapper_viewname):
response = view(context, request)
request.wrapped_response = response
request.wrapped_body = response.body
+ request.wrapped_view = view
return render_view_to_response(context, request, wrapper_viewname)
decorate_view(_owrapped_view, view)
return _owrapped_view