From 1646770c4eee27f37e53dcb50f8a271d5c278abf Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Thu, 29 Oct 2009 23:07:48 +0000 Subject: - The ``repoze.bfg.request.Request`` class, which is a subclass of ``webob.Request`` now defines its own ``__setattr__``, ``__getattr__`` and ``__delattr__`` methods, which override the default WebOb behavior. The default WebOb behavior stores attributes of the request in ``self.environ['webob.adhoc_attrs']``, and retrieves them from that dictionary during a ``__getattr__``. This behavior was undesirable for speed and "expectation" reasons. Now attributes of the ``request`` are stored in ``request.__dict__`` (as you otherwise might expect from an object that did not override these methods). - The router no longer calls ``repoze.bfg.traversal._traverse`` and does its work "inline" (speed). --- repoze/bfg/tests/test_view.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'repoze/bfg/tests/test_view.py') diff --git a/repoze/bfg/tests/test_view.py b/repoze/bfg/tests/test_view.py index bbef24359..14923f5b8 100644 --- a/repoze/bfg/tests/test_view.py +++ b/repoze/bfg/tests/test_view.py @@ -1255,7 +1255,7 @@ class Test_rendered_response(unittest.TestCase): response = {'a':'1'} request = DummyRequest() attrs = {'response_content_type':'text/nonsense'} - request.environ['webob.adhoc_attrs'] = attrs + request.__dict__.update(attrs) result = self._callFUT(renderer, response, request=request) self.assertEqual(result.content_type, 'text/nonsense') @@ -1264,7 +1264,7 @@ class Test_rendered_response(unittest.TestCase): response = {'a':'1'} request = DummyRequest() attrs = {'response_headerlist':[('a', '1'), ('b', '2')]} - request.environ['webob.adhoc_attrs'] = attrs + request.__dict__.update(attrs) result = self._callFUT(renderer, response, request=request) self.assertEqual(result.headerlist, [('Content-Type', 'text/html; charset=UTF-8'), @@ -1277,7 +1277,7 @@ class Test_rendered_response(unittest.TestCase): response = {'a':'1'} request = DummyRequest() attrs = {'response_status':'406 You Lose'} - request.environ['webob.adhoc_attrs'] = attrs + request.__dict__.update(attrs) result = self._callFUT(renderer, response, request=request) self.assertEqual(result.status, '406 You Lose') @@ -1286,7 +1286,7 @@ class Test_rendered_response(unittest.TestCase): response = {'a':'1'} request = DummyRequest() attrs = {'response_charset':'UTF-16'} - request.environ['webob.adhoc_attrs'] = attrs + request.__dict__.update(attrs) result = self._callFUT(renderer, response, request=request) self.assertEqual(result.charset, 'UTF-16') @@ -1295,7 +1295,7 @@ class Test_rendered_response(unittest.TestCase): response = {'a':'1'} request = DummyRequest() attrs = {'response_cache_for':100} - request.environ['webob.adhoc_attrs'] = attrs + request.__dict__.update(attrs) result = self._callFUT(renderer, response, request=request) self.assertEqual(result.cache_control.max_age, 100) -- cgit v1.2.3