Chris McDonough
2011-07-07 32859f733794556e339ea2779b03894e570e0336
fix a few tests broken by refactoring
3 files modified
57 ■■■■■ changed files
pyramid/config.py 34 ●●●●● patch | view | raw | blame | history
pyramid/tests/restbugapp/views.py 2 ●●● patch | view | raw | blame | history
pyramid/tests/test_router.py 21 ●●●●● patch | view | raw | blame | history
pyramid/config.py
@@ -3122,22 +3122,26 @@
        def _rendered_view(context, request):
            renderer = static_renderer
            response = wrapped_view(context, request)
            result = wrapped_view(context, request)
            registry = self.kw['registry']
            attrs = getattr(request, '__dict__', {})
            if 'override_renderer' in attrs:
                # renderer overridden by newrequest event or other
                renderer_name = attrs.pop('override_renderer')
                renderer = RendererHelper(name=renderer_name,
                                          package=self.kw.get('package'),
                                          registry = registry)
            if '__view__' in attrs:
                view_inst = attrs.pop('__view__')
            else:
                view_inst = getattr(wrapped_view, '__original_view__',
                                    wrapped_view)
            response = renderer.render_view(request, response, view_inst,
                                            context)
            # this must adapt, it can't do a simple interface check
            # (webob responses)
            response = registry.queryAdapterOrSelf(result, IResponse)
            if response is None:
                attrs = getattr(request, '__dict__', {})
                if 'override_renderer' in attrs:
                    # renderer overridden by newrequest event or other
                    renderer_name = attrs.pop('override_renderer')
                    renderer = RendererHelper(name=renderer_name,
                                              package=self.kw.get('package'),
                                              registry = registry)
                if '__view__' in attrs:
                    view_inst = attrs.pop('__view__')
                else:
                    view_inst = getattr(wrapped_view, '__original_view__',
                                        wrapped_view)
                response = renderer.render_view(request, result, view_inst,
                                                context)
            return response
        return _rendered_view
pyramid/tests/restbugapp/views.py
@@ -1,4 +1,4 @@
from webob import Response
from pyramid.response import Response
class BaseRESTView(object):
    def __init__(self, context, request):
pyramid/tests/test_router.py
@@ -4,9 +4,8 @@
class TestRouter(unittest.TestCase):
    def setUp(self):
        testing.setUp()
        from pyramid.threadlocal import get_current_registry
        self.registry = get_current_registry()
        self.config = testing.setUp()
        self.registry = self.config.registry
    def tearDown(self):
        testing.tearDown()
@@ -242,7 +241,8 @@
        self._registerTraverserFactory(context)
        environ = self._makeEnviron()
        view = DummyView('abc')
        self._registerView(view, '', IViewClassifier, None, None)
        self._registerView(self.config.derive_view(view), '', IViewClassifier,
                           None, None)
        router = self._makeOne()
        start_response = DummyStartResponse()
        self.assertRaises(ValueError, router, environ, start_response)
@@ -255,7 +255,8 @@
        self._registerTraverserFactory(context)
        environ = self._makeEnviron()
        view = DummyView('abc')
        self._registerView(view, '', IViewClassifier, None, None)
        self._registerView(self.config.derive_view(view), '',
                           IViewClassifier, None, None)
        router = self._makeOne()
        start_response = DummyStartResponse()
        def make_response(s):
@@ -273,7 +274,8 @@
        response.app_iter = ['Hello world']
        view = DummyView(response)
        environ = self._makeEnviron()
        self._registerView(view, '', IViewClassifier, None, None)
        self._registerView(self.config.derive_view(view), '',
                           IViewClassifier, None, None)
        self._registerRootFactory(context)
        router = self._makeOne()
        start_response = DummyStartResponse()
@@ -856,9 +858,12 @@
        environ = self._makeEnviron()
        response = DummyResponse()
        view = DummyView(response, raise_exception=RuntimeError)
        self._registerView(view, '', IViewClassifier, IRequest, None)
        self._registerView(self.config.derive_view(view), '',
                           IViewClassifier, IRequest, None)
        exception_view = DummyView(None)
        self._registerView(exception_view, '', IExceptionViewClassifier,
        self._registerView(self.config.derive_view(exception_view), '',
                           IExceptionViewClassifier,
                           IRequest, RuntimeError)
        router = self._makeOne()
        start_response = DummyStartResponse()