summaryrefslogtreecommitdiff
path: root/repoze/bfg/tests/test_router.py
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2009-01-24 10:31:20 +0000
committerChris McDonough <chrism@agendaless.com>2009-01-24 10:31:20 +0000
commit7292d4d6a7d63c55a718dc50943bc9cbf90ae6fe (patch)
tree61af50cf949b1f2d895375f37d223fbf12237fce /repoze/bfg/tests/test_router.py
parent5ab02920213361e245489c1eedd83757893e0ffa (diff)
downloadpyramid-7292d4d6a7d63c55a718dc50943bc9cbf90ae6fe.tar.gz
pyramid-7292d4d6a7d63c55a718dc50943bc9cbf90ae6fe.tar.bz2
pyramid-7292d4d6a7d63c55a718dc50943bc9cbf90ae6fe.zip
Behavior Changes
---------------- - The ``repoze.bfg.view.render_view_to_response`` API will no longer raise a ValueError if an object returned by a view function it calls does not possess certain attributes (``headerlist``, ``app_iter``, ``status``). This API used to attempt to perform a check using the ``is_response`` function in ``repoze.bfg.view``, and raised a ``ValueError`` if the ``is_response`` check failed. The responsibility is now the caller's to ensure that the return value from a view function is a "real" response. - WSGI environ dicts passed to ``repoze.bfg`` 's Router must now contain a REQUEST_METHOD key/value; if they do not, a KeyError will be raised (speed). Implementation Changes ---------------------- - Various speed micro-tweaks.
Diffstat (limited to 'repoze/bfg/tests/test_router.py')
-rw-r--r--repoze/bfg/tests/test_router.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/repoze/bfg/tests/test_router.py b/repoze/bfg/tests/test_router.py
index 8c2a5cf04..c17bc623a 100644
--- a/repoze/bfg/tests/test_router.py
+++ b/repoze/bfg/tests/test_router.py
@@ -180,6 +180,19 @@ class RouterTests(unittest.TestCase):
self.failUnless("view_name: ''" in message)
self.failUnless("subpath: []" in message)
+ def test_call_view_returns_nonresponse(self):
+ rootfactory = make_rootfactory(None)
+ context = DummyContext()
+ traversalfactory = make_traversal_factory(context, '', [])
+ environ = self._makeEnviron()
+ self._registerTraverserFactory(traversalfactory, '', None)
+ view = make_view('abc')
+ self._registerView(view, '', None, None)
+ self._registerRootFactory(rootfactory)
+ router = self._makeOne()
+ start_response = DummyStartResponse()
+ self.assertRaises(ValueError, router, environ, start_response)
+
def test_call_view_registered_nonspecific_default_path(self):
rootfactory = make_rootfactory(None)
context = DummyContext()