diff options
| author | Chris McDonough <chrism@agendaless.com> | 2008-07-19 01:17:21 +0000 |
|---|---|---|
| committer | Chris McDonough <chrism@agendaless.com> | 2008-07-19 01:17:21 +0000 |
| commit | 4df5751de28947538da491dc8ebe0dfb27f742d5 (patch) | |
| tree | 491c7029cb50f4baed54ddf7485b4aa0bb02d739 /repoze/bfg/tests/test_template.py | |
| parent | 7bce0d6d925370dd5721100c28693f806b68344b (diff) | |
| download | pyramid-4df5751de28947538da491dc8ebe0dfb27f742d5.tar.gz pyramid-4df5751de28947538da491dc8ebe0dfb27f742d5.tar.bz2 pyramid-4df5751de28947538da491dc8ebe0dfb27f742d5.zip | |
- The concept of "view factories" was removed in favor of always
calling a view, which is a callable that returns a response
directly (as opposed to returning a view). As a result, the
``factory`` attribute in the bfg:view ZCML statement has been
renamed to ``view``. Various interface names were changed also.
- ``render_template`` and ``render_transform`` no longer return a
Response object. Instead, these return strings. The old behavior
can be obtained by using ``render_template_to_response`` and
``render_transform_to_response``.
Diffstat (limited to 'repoze/bfg/tests/test_template.py')
| -rw-r--r-- | repoze/bfg/tests/test_template.py | 80 |
1 files changed, 55 insertions, 25 deletions
diff --git a/repoze/bfg/tests/test_template.py b/repoze/bfg/tests/test_template.py index 96129504d..1a5fcf1f4 100644 --- a/repoze/bfg/tests/test_template.py +++ b/repoze/bfg/tests/test_template.py @@ -34,32 +34,24 @@ class Z3CPTTemplateFactoryTests(unittest.TestCase, Base): klass = self._getTargetClass() return klass(*arg, **kw) - def test_instance_conforms_to_IView(self): + def test_instance_implements_ITemplate(self): from zope.interface.verify import verifyObject - from repoze.bfg.interfaces import IView + from repoze.bfg.interfaces import ITemplate path = self._getTemplatePath('minimal.pt') - verifyObject(IView, self._makeOne(path)) + verifyObject(ITemplate, self._makeOne(path)) - def test_class_conforms_to_IView(self): + def test_class_implements_ITemplate(self): from zope.interface.verify import verifyClass - from repoze.bfg.interfaces import IView - verifyClass(IView, self._getTargetClass()) - - def test_class_conforms_to_ITemplateFactory(self): - from zope.interface.verify import verifyObject - from repoze.bfg.interfaces import ITemplateFactory - verifyObject(ITemplateFactory, self._getTargetClass()) + from repoze.bfg.interfaces import ITemplate + verifyClass(ITemplate, self._getTargetClass()) def test_call(self): self._zcmlConfigure() minimal = self._getTemplatePath('minimal.pt') instance = self._makeOne(minimal) result = instance() - from webob import Response - self.failUnless(isinstance(result, Response)) - self.assertEqual(result.app_iter, ['<div>\n</div>']) - self.assertEqual(result.status, '200 OK') - self.assertEqual(len(result.headerlist), 2) + self.failUnless(isinstance(result, str)) + self.assertEqual(result, '<div>\n</div>') class RenderTemplateTests(unittest.TestCase, Base): def setUp(self): @@ -75,9 +67,50 @@ class RenderTemplateTests(unittest.TestCase, Base): def test_nonabs_unregistered(self): self._zcmlConfigure() from zope.component import queryUtility - from repoze.bfg.interfaces import IView + from repoze.bfg.interfaces import ITemplate + minimal = self._getTemplatePath('minimal.pt') + self.assertEqual(queryUtility(ITemplate, minimal), None) + render = self._getFUT() + result = render(minimal) + self.failUnless(isinstance(result, str)) + self.assertEqual(result, '<div>\n</div>') + from repoze.bfg.template import Z3CPTTemplateFactory + self.failUnless(isinstance(queryUtility(ITemplate, minimal), + Z3CPTTemplateFactory)) + + def test_nonabs_registered(self): + self._zcmlConfigure() + from zope.component import getGlobalSiteManager + from zope.component import queryUtility + from repoze.bfg.template import Z3CPTTemplateFactory + from repoze.bfg.interfaces import ITemplate + minimal = self._getTemplatePath('minimal.pt') + utility = Z3CPTTemplateFactory(minimal) + gsm = getGlobalSiteManager() + gsm.registerUtility(utility, ITemplate, name=minimal) + render = self._getFUT() + result = render(minimal) + self.failUnless(isinstance(result, str)) + self.assertEqual(result, '<div>\n</div>') + self.assertEqual(queryUtility(ITemplate, minimal), utility) + +class RenderTemplateToResponseTests(unittest.TestCase, Base): + def setUp(self): + Base.setUp(self) + + def tearDown(self): + Base.tearDown(self) + + def _getFUT(self): + from repoze.bfg.template import render_template_to_response + return render_template_to_response + + def test_nonabs_unregistered(self): + self._zcmlConfigure() + from zope.component import queryUtility + from repoze.bfg.interfaces import ITemplate minimal = self._getTemplatePath('minimal.pt') - self.assertEqual(queryUtility(IView, minimal), None) + self.assertEqual(queryUtility(ITemplate, minimal), None) render = self._getFUT() result = render(minimal) from webob import Response @@ -86,7 +119,7 @@ class RenderTemplateTests(unittest.TestCase, Base): self.assertEqual(result.status, '200 OK') self.assertEqual(len(result.headerlist), 2) from repoze.bfg.template import Z3CPTTemplateFactory - self.failUnless(isinstance(queryUtility(IView, minimal), + self.failUnless(isinstance(queryUtility(ITemplate, minimal), Z3CPTTemplateFactory)) def test_nonabs_registered(self): @@ -94,11 +127,11 @@ class RenderTemplateTests(unittest.TestCase, Base): from zope.component import getGlobalSiteManager from zope.component import queryUtility from repoze.bfg.template import Z3CPTTemplateFactory - from repoze.bfg.interfaces import IView + from repoze.bfg.interfaces import ITemplate minimal = self._getTemplatePath('minimal.pt') utility = Z3CPTTemplateFactory(minimal) gsm = getGlobalSiteManager() - gsm.registerUtility(utility, IView, name=minimal) + gsm.registerUtility(utility, ITemplate, name=minimal) render = self._getFUT() result = render(minimal) from webob import Response @@ -106,9 +139,6 @@ class RenderTemplateTests(unittest.TestCase, Base): self.assertEqual(result.app_iter, ['<div>\n</div>']) self.assertEqual(result.status, '200 OK') self.assertEqual(len(result.headerlist), 2) - self.assertEqual(queryUtility(IView, minimal), utility) + self.assertEqual(queryUtility(ITemplate, minimal), utility) -class DummyView: - context = 'context' - request = 'request' |
