summaryrefslogtreecommitdiff
path: root/repoze/bfg/tests/test_router.py
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2009-06-01 07:20:48 +0000
committerChris McDonough <chrism@agendaless.com>2009-06-01 07:20:48 +0000
commita7f13ff10e0eae01b958738e41d9d172af2916dd (patch)
tree4ecb45f92d4cbca39ca8ed70b6e7d7a657efcb33 /repoze/bfg/tests/test_router.py
parentc1278c88b6cd19ad81c96f8b8a66a01df23a6200 (diff)
downloadpyramid-a7f13ff10e0eae01b958738e41d9d172af2916dd.tar.gz
pyramid-a7f13ff10e0eae01b958738e41d9d172af2916dd.tar.bz2
pyramid-a7f13ff10e0eae01b958738e41d9d172af2916dd.zip
- It was not possible to register a custom ``IRoutesContextFactory``
for use as a default context factory as documented in the "Hooks" chapter.
Diffstat (limited to 'repoze/bfg/tests/test_router.py')
-rw-r--r--repoze/bfg/tests/test_router.py32
1 files changed, 32 insertions, 0 deletions
diff --git a/repoze/bfg/tests/test_router.py b/repoze/bfg/tests/test_router.py
index 09c3f7c1f..d07efcc69 100644
--- a/repoze/bfg/tests/test_router.py
+++ b/repoze/bfg/tests/test_router.py
@@ -911,6 +911,38 @@ class MakeAppTests(unittest.TestCase):
self.assertEqual(len(logger.messages), 1)
self.failUnless('ISecurityPolicy' in logger.messages[0])
+ def test_custom_default_context_factory_nodecorate(self):
+ from repoze.bfg.tests import routesapp
+ from zope.component import getGlobalSiteManager
+ from repoze.bfg.interfaces import IRoutesContextFactory
+ from repoze.bfg.interfaces import IRoutesMapper
+ class Dummy(object):
+ pass
+ gsm = getGlobalSiteManager()
+ gsm.registerUtility(Dummy, IRoutesContextFactory)
+ app = self._callFUT(None, routesapp, registry=gsm)
+ mapper = gsm.getUtility(IRoutesMapper)
+ self.assertEqual(mapper.default_context_factory,
+ Dummy)
+ self.assertEqual(mapper.decorate_context, True)
+
+ def test_custom_default_context_factory_decorate(self):
+ from repoze.bfg.tests import routesapp
+ from zope.component import getGlobalSiteManager
+ from repoze.bfg.interfaces import IRoutesContextFactory
+ from repoze.bfg.interfaces import IRoutesMapper
+ from repoze.bfg.interfaces import IRoutesContext
+ from zope.interface import implements
+ class Dummy(object):
+ implements(IRoutesContext)
+ gsm = getGlobalSiteManager()
+ gsm.registerUtility(Dummy, IRoutesContextFactory)
+ app = self._callFUT(None, routesapp, registry=gsm)
+ mapper = gsm.getUtility(IRoutesMapper)
+ self.assertEqual(mapper.default_context_factory,
+ Dummy)
+ self.assertEqual(mapper.decorate_context, False)
+
class TestDefaultForbiddenView(unittest.TestCase):
def _callFUT(self, context, request):
from repoze.bfg.router import default_forbidden_view