diff options
Diffstat (limited to 'repoze/bfg/tests')
| -rw-r--r-- | repoze/bfg/tests/test_request.py | 4 | ||||
| -rw-r--r-- | repoze/bfg/tests/test_router.py | 27 |
2 files changed, 21 insertions, 10 deletions
diff --git a/repoze/bfg/tests/test_request.py b/repoze/bfg/tests/test_request.py index d8a3c09fb..ae52f8420 100644 --- a/repoze/bfg/tests/test_request.py +++ b/repoze/bfg/tests/test_request.py @@ -23,6 +23,10 @@ class TestRequest(unittest.TestCase): r = self._makeOne({'PATH_INFO':'/'}) self.assertEqual(r.charset, 'utf-8') + def test_exception_defaults_to_None(self): + r = self._makeOne({'PATH_INFO':'/'}) + self.assertEqual(r.exception, None) + def test_params_decoded_from_utf_8_by_default(self): environ = { 'PATH_INFO':'/', diff --git a/repoze/bfg/tests/test_router.py b/repoze/bfg/tests/test_router.py index 199602a96..fade0679b 100644 --- a/repoze/bfg/tests/test_router.py +++ b/repoze/bfg/tests/test_router.py @@ -518,12 +518,11 @@ class TestRouter(unittest.TestCase): self.assertEqual(request.subpath, []) self.assertEqual(request.context, context) self.assertEqual(request.root, root) - routing_args = environ['wsgiorg.routing_args'][1] - self.assertEqual(routing_args['action'], 'action1') - self.assertEqual(routing_args['article'], 'article1') - self.assertEqual(environ['bfg.routes.matchdict'], routing_args) + matchdict = {'action':'action1', 'article':'article1'} + self.assertEqual(environ['bfg.routes.matchdict'], matchdict) self.assertEqual(environ['bfg.routes.route'].name, 'foo') - self.assertEqual(request.matchdict, routing_args) + self.assertEqual(request.matchdict, matchdict) + self.assertEqual(request.matched_route.name, 'foo') def test_call_route_matches_doesnt_overwrite_subscriber_iface(self): from repoze.bfg.interfaces import INewRequest @@ -559,12 +558,11 @@ class TestRouter(unittest.TestCase): self.assertEqual(request.subpath, []) self.assertEqual(request.context, context) self.assertEqual(request.root, root) - routing_args = environ['wsgiorg.routing_args'][1] - self.assertEqual(routing_args['action'], 'action1') - self.assertEqual(routing_args['article'], 'article1') - self.assertEqual(environ['bfg.routes.matchdict'], routing_args) + matchdict = {'action':'action1', 'article':'article1'} + self.assertEqual(environ['bfg.routes.matchdict'], matchdict) self.assertEqual(environ['bfg.routes.route'].name, 'foo') - self.assertEqual(request.matchdict, routing_args) + self.assertEqual(request.matchdict, matchdict) + self.assertEqual(request.matched_route.name, 'foo') self.failUnless(IFoo.providedBy(request)) def test_root_factory_raises_notfound(self): @@ -634,6 +632,12 @@ class TestRouter(unittest.TestCase): pass from repoze.bfg.interfaces import IRequest from repoze.bfg.interfaces import IViewClassifier + from repoze.bfg.interfaces import IRequestFactory + def rfactory(environ): + return request + self.registry.registerUtility(rfactory, IRequestFactory) + from repoze.bfg.request import Request + request = Request.blank('/') context = DummyContext() directlyProvides(context, IContext) self._registerTraverserFactory(context, subpath=['']) @@ -644,6 +648,9 @@ class TestRouter(unittest.TestCase): router = self._makeOne() start_response = DummyStartResponse() self.assertRaises(RuntimeError, router, environ, start_response) + # ``exception`` must be attached to request even if a suitable + # exception view cannot be found + self.assertEqual(request.exception.__class__, RuntimeError) def test_call_view_raises_exception_view(self): from repoze.bfg.interfaces import IViewClassifier |
