summaryrefslogtreecommitdiff
path: root/repoze/bfg/tests/test_xslt.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_xslt.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_xslt.py')
-rw-r--r--repoze/bfg/tests/test_xslt.py95
1 files changed, 65 insertions, 30 deletions
diff --git a/repoze/bfg/tests/test_xslt.py b/repoze/bfg/tests/test_xslt.py
index ebf0e625d..01e5befba 100644
--- a/repoze/bfg/tests/test_xslt.py
+++ b/repoze/bfg/tests/test_xslt.py
@@ -34,21 +34,16 @@ class XSLTemplateFactoryTests(unittest.TestCase, Base):
klass = self._getTargetClass()
return klass(*arg, **kw)
- def test_instance_conforms_to_INodeView(self):
+ def test_instance_implements_INodeTemplate(self):
from zope.interface.verify import verifyObject
- from repoze.bfg.interfaces import INodeView
+ from repoze.bfg.interfaces import INodeTemplate
path = self._getTemplatePath('minimal.xsl')
- verifyObject(INodeView, self._makeOne(path))
+ verifyObject(INodeTemplate, self._makeOne(path))
- def test_class_conforms_to_INodeView(self):
+ def test_class_implements_INodeTemplate(self):
from zope.interface.verify import verifyClass
- from repoze.bfg.interfaces import INodeView
- verifyClass(INodeView, 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 INodeTemplate
+ verifyClass(INodeTemplate, self._getTargetClass())
def test_call(self):
self._zcmlConfigure()
@@ -57,14 +52,11 @@ class XSLTemplateFactoryTests(unittest.TestCase, Base):
from lxml import etree
info = etree.Element("info")
result = instance(node=info)
- from webob import Response
- self.failUnless(isinstance(result, Response))
+ self.failUnless(isinstance(result, str))
resultstr = """<?xml version="1.0"?>\n<div/>\n"""
- self.assertEqual(result.app_iter, [resultstr])
- self.assertEqual(result.status, '200 OK')
- self.assertEqual(len(result.headerlist), 2)
+ self.assertEqual(result, resultstr)
-class RenderTemplateTests(unittest.TestCase, Base):
+class RenderTransformToResponseTests(unittest.TestCase, Base):
def setUp(self):
Base.setUp(self)
@@ -72,15 +64,15 @@ class RenderTemplateTests(unittest.TestCase, Base):
Base.tearDown(self)
def _getFUT(self):
- from repoze.bfg.template import render_transform
- return render_transform
+ from repoze.bfg.template import render_transform_to_response
+ return render_transform_to_response
def test_nonabs_unregistered(self):
self._zcmlConfigure()
from zope.component import queryUtility
- from repoze.bfg.interfaces import IView
+ from repoze.bfg.interfaces import INodeTemplate
minimal = self._getTemplatePath('minimal.xsl')
- self.assertEqual(queryUtility(IView, minimal), None)
+ self.assertEqual(queryUtility(INodeTemplate, minimal), None)
render = self._getFUT()
from lxml import etree
info = etree.Element("info")
@@ -92,7 +84,7 @@ class RenderTemplateTests(unittest.TestCase, Base):
self.assertEqual(result.status, '200 OK')
self.assertEqual(len(result.headerlist), 2)
from repoze.bfg.template import XSLTemplateFactory
- self.failUnless(isinstance(queryUtility(IView, minimal),
+ self.failUnless(isinstance(queryUtility(INodeTemplate, minimal),
XSLTemplateFactory))
def test_nonabs_registered(self):
@@ -100,11 +92,11 @@ class RenderTemplateTests(unittest.TestCase, Base):
from zope.component import getGlobalSiteManager
from zope.component import queryUtility
from repoze.bfg.template import XSLTemplateFactory
- from repoze.bfg.interfaces import IView
+ from repoze.bfg.interfaces import INodeTemplate
minimal = self._getTemplatePath('minimal.xsl')
utility = XSLTemplateFactory(minimal)
gsm = getGlobalSiteManager()
- gsm.registerUtility(utility, IView, name=minimal)
+ gsm.registerUtility(utility, INodeTemplate, name=minimal)
render = self._getFUT()
from lxml import etree
info = etree.Element("info")
@@ -115,9 +107,52 @@ class RenderTemplateTests(unittest.TestCase, Base):
self.assertEqual(result.app_iter, [resultstr])
self.assertEqual(result.status, '200 OK')
self.assertEqual(len(result.headerlist), 2)
- self.assertEqual(queryUtility(IView, minimal), utility)
-
-class DummyView:
- context = 'context'
- request = 'request'
-
+ self.assertEqual(queryUtility(INodeTemplate, minimal), utility)
+
+class RenderTransformTests(unittest.TestCase, Base):
+ def setUp(self):
+ Base.setUp(self)
+
+ def tearDown(self):
+ Base.tearDown(self)
+
+ def _getFUT(self):
+ from repoze.bfg.template import render_transform
+ return render_transform
+
+ def test_nonabs_unregistered(self):
+ self._zcmlConfigure()
+ from zope.component import queryUtility
+ from repoze.bfg.interfaces import INodeTemplate
+ minimal = self._getTemplatePath('minimal.xsl')
+ self.assertEqual(queryUtility(INodeTemplate, minimal), None)
+ render = self._getFUT()
+ from lxml import etree
+ info = etree.Element("info")
+ result = render(minimal, node=info)
+ self.failUnless(isinstance(result, str))
+ resultstr = """<?xml version="1.0"?>\n<div/>\n"""
+ self.assertEqual(result, resultstr)
+ from repoze.bfg.template import XSLTemplateFactory
+ self.failUnless(isinstance(queryUtility(INodeTemplate, minimal),
+ XSLTemplateFactory))
+
+ def test_nonabs_registered(self):
+ self._zcmlConfigure()
+ from zope.component import getGlobalSiteManager
+ from zope.component import queryUtility
+ from repoze.bfg.template import XSLTemplateFactory
+ from repoze.bfg.interfaces import INodeTemplate
+ minimal = self._getTemplatePath('minimal.xsl')
+ utility = XSLTemplateFactory(minimal)
+ gsm = getGlobalSiteManager()
+ gsm.registerUtility(utility, INodeTemplate, name=minimal)
+ render = self._getFUT()
+ from lxml import etree
+ info = etree.Element("info")
+ result = render(minimal, node=info)
+ self.failUnless(isinstance(result, str))
+ resultstr = """<?xml version="1.0"?>\n<div/>\n"""
+ self.assertEqual(result, resultstr)
+ self.assertEqual(queryUtility(INodeTemplate, minimal), utility)
+