From a1f12be881a025d0640052554e8d53cdfe19afa9 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Tue, 8 Jul 2008 14:25:46 +0000 Subject: Redirect on default view if name doesn't end with slash. Rejigger sample app, adding more templates. --- repoze/bfg/tests/test_router.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'repoze/bfg/tests') diff --git a/repoze/bfg/tests/test_router.py b/repoze/bfg/tests/test_router.py index bfa72fe41..25d3bfdcf 100644 --- a/repoze/bfg/tests/test_router.py +++ b/repoze/bfg/tests/test_router.py @@ -60,6 +60,30 @@ class RouterTests(unittest.TestCase, PlacelessSetup): self.assertEqual(status, '404 Not Found') self.failUnless('http://localhost:8080' in result[0], result) + def test_call_default_view_redirect(self): + rootpolicy = make_rootpolicy(None) + context = DummyContext() + traversalfactory = make_traversal_factory(context, '', []) + response = DummyResponse() + viewfactory = make_view_factory(response) + wsgifactory = make_wsgi_factory('200 OK', (), ['Hello world']) + environ = self._makeEnviron(PATH_INFO='/doesnt/end/in/slash') + self._registerTraverserFactory(traversalfactory, '', None, None) + self._registerViewFactory(viewfactory, '', None, None) + self._registerWSGIFactory(wsgifactory, '', None, None) + router = self._makeOne(rootpolicy) + start_response = DummyStartResponse() + result = router(environ, start_response) + headers = start_response.headers + self.assertEqual(len(headers), 3) + self.assertEqual( + headers[0], + ('content-type', 'text/html; charset=UTF-8')) + self.assertEqual( + headers[1], + ('location', 'http://localhost:8080/doesnt/end/in/slash/')) + self.assertEqual(start_response.status, '302 Found') + def test_call_view_registered_nonspecific_default_path(self): rootpolicy = make_rootpolicy(None) context = DummyContext() -- cgit v1.2.3