summaryrefslogtreecommitdiff
path: root/repoze/bfg/tests/test_template.py
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2008-07-19 01:17:21 +0000
committerChris McDonough <chrism@agendaless.com>2008-07-19 01:17:21 +0000
commit4df5751de28947538da491dc8ebe0dfb27f742d5 (patch)
tree491c7029cb50f4baed54ddf7485b4aa0bb02d739 /repoze/bfg/tests/test_template.py
parent7bce0d6d925370dd5721100c28693f806b68344b (diff)
downloadpyramid-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.py80
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'