From 7292d4d6a7d63c55a718dc50943bc9cbf90ae6fe Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Sat, 24 Jan 2009 10:31:20 +0000 Subject: 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. --- repoze/bfg/tests/test_router.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'repoze/bfg/tests/test_router.py') 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() -- cgit v1.2.3