summaryrefslogtreecommitdiff
path: root/repoze/bfg/tests
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2009-11-28 19:10:23 +0000
committerChris McDonough <chrism@agendaless.com>2009-11-28 19:10:23 +0000
commit4d534ed4224261529550c53b81628a685facdc46 (patch)
tree0d88ed5dabee358236d6ae9102c0cfadf4086c43 /repoze/bfg/tests
parent07a723720d1fea85ec7d0629324c015712b16b4e (diff)
downloadpyramid-4d534ed4224261529550c53b81628a685facdc46.tar.gz
pyramid-4d534ed4224261529550c53b81628a685facdc46.tar.bz2
pyramid-4d534ed4224261529550c53b81628a685facdc46.zip
Allow initial registry setup to be called via a ``setup_registry`` method.
Allow path specifications for renderers which are already resource specifications.
Diffstat (limited to 'repoze/bfg/tests')
-rw-r--r--repoze/bfg/tests/test_configuration.py70
-rw-r--r--repoze/bfg/tests/test_zcml.py5
2 files changed, 75 insertions, 0 deletions
diff --git a/repoze/bfg/tests/test_configuration.py b/repoze/bfg/tests/test_configuration.py
index fcce6accd..060f30e3a 100644
--- a/repoze/bfg/tests/test_configuration.py
+++ b/repoze/bfg/tests/test_configuration.py
@@ -140,6 +140,76 @@ class ConfiguratorTests(unittest.TestCase):
self.assertEqual(config.registry.getUtility(IRendererFactory, 'yeah'),
renderer)
+ def test_setup_registry_custom_settings(self):
+ from repoze.bfg.registry import Registry
+ from repoze.bfg.interfaces import ISettings
+ settings = {'reload_templates':True,
+ 'mysetting':True}
+ reg = Registry()
+ config = self._makeOne(reg)
+ config.setup_registry(settings=settings)
+ settings = reg.getUtility(ISettings)
+ self.assertEqual(settings['reload_templates'], True)
+ self.assertEqual(settings['debug_authorization'], False)
+ self.assertEqual(settings['mysetting'], True)
+
+ def test_setup_registry_debug_logger_None_default(self):
+ from repoze.bfg.registry import Registry
+ from repoze.bfg.interfaces import IDebugLogger
+ reg = Registry()
+ config = self._makeOne(reg)
+ config.setup_registry()
+ logger = reg.getUtility(IDebugLogger)
+ self.assertEqual(logger.name, 'repoze.bfg.debug')
+
+ def test_setup_registry_debug_logger_non_None(self):
+ from repoze.bfg.registry import Registry
+ from repoze.bfg.interfaces import IDebugLogger
+ logger = object()
+ reg = Registry()
+ config = self._makeOne(reg)
+ config.setup_registry(debug_logger=logger)
+ result = reg.getUtility(IDebugLogger)
+ self.assertEqual(logger, result)
+
+ def test_setup_registry_authentication_policy(self):
+ from repoze.bfg.registry import Registry
+ from repoze.bfg.interfaces import IAuthenticationPolicy
+ policy = object()
+ reg = Registry()
+ config = self._makeOne(reg)
+ config.setup_registry(authentication_policy=policy)
+ result = reg.getUtility(IAuthenticationPolicy)
+ self.assertEqual(policy, result)
+
+ def test_setup_registry_authorization_policy_only(self):
+ from repoze.bfg.registry import Registry
+ from zope.configuration.exceptions import ConfigurationError
+ policy = object()
+ reg = Registry()
+ config = self._makeOne(reg)
+ config = self.assertRaises(ConfigurationError,
+ config.setup_registry,
+ authorization_policy=policy)
+
+ def test_setup_registry_default_root_factory(self):
+ from repoze.bfg.registry import Registry
+ from repoze.bfg.interfaces import IRootFactory
+ reg = Registry()
+ config = self._makeOne(reg)
+ config.setup_registry()
+ self.failUnless(reg.getUtility(IRootFactory))
+
+ def test_setup_registry_alternate_renderers(self):
+ from repoze.bfg.registry import Registry
+ from repoze.bfg.interfaces import IRendererFactory
+ renderer = object()
+ reg = Registry()
+ config = self._makeOne(reg)
+ config.setup_registry(renderers=[('yeah', renderer)])
+ self.assertEqual(reg.getUtility(IRendererFactory, 'yeah'),
+ renderer)
+
def test_add_subscriber_defaults(self):
from zope.interface import implements
from zope.interface import Interface
diff --git a/repoze/bfg/tests/test_zcml.py b/repoze/bfg/tests/test_zcml.py
index e00b02f74..f69afc03b 100644
--- a/repoze/bfg/tests/test_zcml.py
+++ b/repoze/bfg/tests/test_zcml.py
@@ -939,6 +939,11 @@ class Test_path_spec(unittest.TestCase):
result = self._callFUT(context, '/foo.pt')
self.assertEqual(result, '/foo.pt')
+ def test_path_is_already_resource_spec(self):
+ context = DummyContext()
+ result = self._callFUT(context, 'repoze.bfg.tests:foo.pt')
+ self.assertEqual(result, 'repoze.bfg.tests:foo.pt')
+
class IDummy(Interface):
pass