summaryrefslogtreecommitdiff
path: root/repoze/bfg/tests
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2009-05-01 10:26:57 +0000
committerChris McDonough <chrism@agendaless.com>2009-05-01 10:26:57 +0000
commitba9b0e647bff1bf0c437ab204ddf11783ed698f8 (patch)
tree1952ebfdc40ae71a3bc54eb10a92a0fe1e8273ec /repoze/bfg/tests
parentbc0698e1ac67106346d8c006bddcb38370f7c16b (diff)
downloadpyramid-ba9b0e647bff1bf0c437ab204ddf11783ed698f8.tar.gz
pyramid-ba9b0e647bff1bf0c437ab204ddf11783ed698f8.tar.bz2
pyramid-ba9b0e647bff1bf0c437ab204ddf11783ed698f8.zip
Merge "c-free" branch to trunk.
Diffstat (limited to 'repoze/bfg/tests')
-rw-r--r--repoze/bfg/tests/test_chameleon_genshi.py187
-rw-r--r--repoze/bfg/tests/test_chameleon_zpt.py6
-rw-r--r--repoze/bfg/tests/test_template.py2
-rw-r--r--repoze/bfg/tests/test_xslt.py221
4 files changed, 4 insertions, 412 deletions
diff --git a/repoze/bfg/tests/test_chameleon_genshi.py b/repoze/bfg/tests/test_chameleon_genshi.py
deleted file mode 100644
index 6d62891bf..000000000
--- a/repoze/bfg/tests/test_chameleon_genshi.py
+++ /dev/null
@@ -1,187 +0,0 @@
-import unittest
-
-from zope.testing.cleanup import cleanUp
-
-class Base(object):
- def setUp(self):
- cleanUp()
-
- def tearDown(self):
- cleanUp()
-
- def _zcmlConfigure(self):
- import repoze.bfg.includes
- import zope.configuration.xmlconfig
- zope.configuration.xmlconfig.file('configure.zcml',
- package=repoze.bfg.includes)
-
- def _getTemplatePath(self, name):
- import os
- here = os.path.abspath(os.path.dirname(__file__))
- return os.path.join(here, 'fixtures', name)
-
-class GenshiTemplateRendererTests(Base, unittest.TestCase):
- def _getTargetClass(self):
- from repoze.bfg.chameleon_genshi import GenshiTemplateRenderer
- return GenshiTemplateRenderer
-
- def _makeOne(self, *arg, **kw):
- klass = self._getTargetClass()
- return klass(*arg, **kw)
-
- def test_instance_implements_ITemplate(self):
- from zope.interface.verify import verifyObject
- from repoze.bfg.interfaces import ITemplateRenderer
- path = self._getTemplatePath('minimal.genshi')
- verifyObject(ITemplateRenderer, self._makeOne(path))
-
- def test_class_implements_ITemplate(self):
- from zope.interface.verify import verifyClass
- from repoze.bfg.interfaces import ITemplateRenderer
- verifyClass(ITemplateRenderer, self._getTargetClass())
-
- def test_call(self):
- self._zcmlConfigure()
- minimal = self._getTemplatePath('minimal.genshi')
- instance = self._makeOne(minimal)
- result = instance()
- self.failUnless(isinstance(result, str))
- self.assertEqual(result,
- '<div xmlns="http://www.w3.org/1999/xhtml">\n</div>')
-
- def test_implementation(self):
- self._zcmlConfigure()
- minimal = self._getTemplatePath('minimal.genshi')
- instance = self._makeOne(minimal)
- result = instance.implementation()()
- self.failUnless(isinstance(result, str))
- self.assertEqual(result,
- '<div xmlns="http://www.w3.org/1999/xhtml">\n</div>')
-
-class RenderTemplateTests(Base, unittest.TestCase):
- def _callFUT(self, name, **kw):
- from repoze.bfg.chameleon_genshi import render_template
- return render_template(name, **kw)
-
- def test_it(self):
- minimal = self._getTemplatePath('minimal.genshi')
- result = self._callFUT(minimal)
- self.failUnless(isinstance(result, str))
- self.assertEqual(result,
- '<div xmlns="http://www.w3.org/1999/xhtml">\n</div>')
-
-class RenderTemplateToResponseTests(Base, unittest.TestCase):
- def _callFUT(self, name, **kw):
- from repoze.bfg.chameleon_genshi import render_template_to_response
- return render_template_to_response(name, **kw)
-
- def test_it(self):
- minimal = self._getTemplatePath('minimal.genshi')
- result = self._callFUT(minimal)
- from webob import Response
- self.failUnless(isinstance(result, Response))
- self.assertEqual(result.app_iter,
- ['<div xmlns="http://www.w3.org/1999/xhtml">\n</div>'])
- self.assertEqual(result.status, '200 OK')
- self.assertEqual(len(result.headerlist), 2)
-
- def test_iresponsefactory_override(self):
- from zope.component import getGlobalSiteManager
- gsm = getGlobalSiteManager()
- from webob import Response
- class Response2(Response):
- pass
- from repoze.bfg.interfaces import IResponseFactory
- gsm.registerUtility(Response2, IResponseFactory)
- minimal = self._getTemplatePath('minimal.genshi')
- result = self._callFUT(minimal)
- self.failUnless(isinstance(result, Response2))
-
-class GetRendererTests(Base, unittest.TestCase):
- def _callFUT(self, name):
- from repoze.bfg.chameleon_genshi import get_renderer
- return get_renderer(name)
-
- def test_nonabs_registered(self):
- from zope.component import getGlobalSiteManager
- from zope.component import queryUtility
- from repoze.bfg.chameleon_genshi import GenshiTemplateRenderer
- from repoze.bfg.interfaces import ITemplateRenderer
- minimal = self._getTemplatePath('minimal.genshi')
- utility = GenshiTemplateRenderer(minimal)
- gsm = getGlobalSiteManager()
- gsm.registerUtility(utility, ITemplateRenderer, name=minimal)
- result = self._callFUT(minimal)
- self.assertEqual(result, utility)
- self.assertEqual(queryUtility(ITemplateRenderer, minimal), utility)
-
- def test_nonabs_unregistered(self):
- from zope.component import getGlobalSiteManager
- from zope.component import queryUtility
- from repoze.bfg.chameleon_genshi import GenshiTemplateRenderer
- from repoze.bfg.interfaces import ITemplateRenderer
- minimal = self._getTemplatePath('minimal.genshi')
- self.assertEqual(queryUtility(ITemplateRenderer, minimal), None)
- utility = GenshiTemplateRenderer(minimal)
- gsm = getGlobalSiteManager()
- gsm.registerUtility(utility, ITemplateRenderer, name=minimal)
- result = self._callFUT(minimal)
- self.assertEqual(result, utility)
- self.assertEqual(queryUtility(ITemplateRenderer, minimal), utility)
-
- def test_explicit_registration(self):
- from zope.component import getGlobalSiteManager
- from repoze.bfg.interfaces import ITemplateRenderer
- class Dummy:
- template = object()
- gsm = getGlobalSiteManager()
- utility = Dummy()
- gsm.registerUtility(utility, ITemplateRenderer, name='foo')
- result = self._callFUT('foo')
- self.failUnless(result is utility)
-
-
-class GetTemplateTests(Base, unittest.TestCase):
- def _callFUT(self, name):
- from repoze.bfg.chameleon_genshi import get_template
- return get_template(name)
-
- def test_nonabs_registered(self):
- from zope.component import getGlobalSiteManager
- from zope.component import queryUtility
- from repoze.bfg.chameleon_genshi import GenshiTemplateRenderer
- from repoze.bfg.interfaces import ITemplateRenderer
- minimal = self._getTemplatePath('minimal.genshi')
- utility = GenshiTemplateRenderer(minimal)
- gsm = getGlobalSiteManager()
- gsm.registerUtility(utility, ITemplateRenderer, name=minimal)
- result = self._callFUT(minimal)
- self.assertEqual(result.filename, minimal)
- self.assertEqual(queryUtility(ITemplateRenderer, minimal), utility)
-
- def test_nonabs_unregistered(self):
- from zope.component import getGlobalSiteManager
- from zope.component import queryUtility
- from repoze.bfg.chameleon_genshi import GenshiTemplateRenderer
- from repoze.bfg.interfaces import ITemplateRenderer
- minimal = self._getTemplatePath('minimal.genshi')
- self.assertEqual(queryUtility(ITemplateRenderer, minimal), None)
- utility = GenshiTemplateRenderer(minimal)
- gsm = getGlobalSiteManager()
- gsm.registerUtility(utility, ITemplateRenderer, name=minimal)
- result = self._callFUT(minimal)
- self.assertEqual(result.filename, minimal)
- self.assertEqual(queryUtility(ITemplateRenderer, minimal), utility)
-
- def test_explicit_registration(self):
- from zope.component import getGlobalSiteManager
- from repoze.bfg.interfaces import ITemplateRenderer
- class Dummy:
- template = object()
- def implementation(self):
- return self.template
- gsm = getGlobalSiteManager()
- utility = Dummy()
- gsm.registerUtility(utility, ITemplateRenderer, name='foo')
- result = self._callFUT('foo')
- self.failUnless(result is utility.template)
diff --git a/repoze/bfg/tests/test_chameleon_zpt.py b/repoze/bfg/tests/test_chameleon_zpt.py
index 114817994..e0ed74e5f 100644
--- a/repoze/bfg/tests/test_chameleon_zpt.py
+++ b/repoze/bfg/tests/test_chameleon_zpt.py
@@ -45,7 +45,7 @@ class ZPTTemplateRendererTests(Base, unittest.TestCase):
minimal = self._getTemplatePath('minimal.pt')
instance = self._makeOne(minimal)
result = instance()
- self.failUnless(isinstance(result, str))
+ self.failUnless(isinstance(result, unicode))
self.assertEqual(result,
'<div xmlns="http://www.w3.org/1999/xhtml">\n</div>')
@@ -54,7 +54,7 @@ class ZPTTemplateRendererTests(Base, unittest.TestCase):
minimal = self._getTemplatePath('minimal.pt')
instance = self._makeOne(minimal)
result = instance.implementation()()
- self.failUnless(isinstance(result, str))
+ self.failUnless(isinstance(result, unicode))
self.assertEqual(result,
'<div xmlns="http://www.w3.org/1999/xhtml">\n</div>')
@@ -68,7 +68,7 @@ class RenderTemplateTests(Base, unittest.TestCase):
self._zcmlConfigure()
minimal = self._getTemplatePath('minimal.pt')
result = self._callFUT(minimal)
- self.failUnless(isinstance(result, str))
+ self.failUnless(isinstance(result, unicode))
self.assertEqual(result,
'<div xmlns="http://www.w3.org/1999/xhtml">\n</div>')
diff --git a/repoze/bfg/tests/test_template.py b/repoze/bfg/tests/test_template.py
index 8d16972b8..78bd139c5 100644
--- a/repoze/bfg/tests/test_template.py
+++ b/repoze/bfg/tests/test_template.py
@@ -33,7 +33,7 @@ class RenderTemplateTests(Base, unittest.TestCase):
self._zcmlConfigure()
minimal = self._getTemplatePath('minimal.pt')
result = self._callFUT(minimal)
- self.failUnless(isinstance(result, str))
+ self.failUnless(isinstance(result, unicode))
self.assertEqual(result,
'<div xmlns="http://www.w3.org/1999/xhtml">\n</div>')
diff --git a/repoze/bfg/tests/test_xslt.py b/repoze/bfg/tests/test_xslt.py
deleted file mode 100644
index eed0fc808..000000000
--- a/repoze/bfg/tests/test_xslt.py
+++ /dev/null
@@ -1,221 +0,0 @@
-import unittest
-from zope.testing.cleanup import cleanUp
-
-class Base(object):
- def setUp(self):
- cleanUp()
-
- def tearDown(self):
- cleanUp()
-
- def _zcmlConfigure(self):
- import repoze.bfg.includes
- import zope.configuration.xmlconfig
- zope.configuration.xmlconfig.file('configure.zcml',
- package=repoze.bfg.includes)
-
- def _getTemplatePath(self, name):
- import os
- here = os.path.abspath(os.path.dirname(__file__))
- return os.path.join(here, 'fixtures', name)
-
-class XSLTemplateRendererTests(Base, unittest.TestCase):
- def _getTargetClass(self):
- from repoze.bfg.xslt import XSLTemplateRenderer
- return XSLTemplateRenderer
-
- def _makeOne(self, *arg, **kw):
- klass = self._getTargetClass()
- return klass(*arg, **kw)
-
- def test_instance_implements_INodeTemplate(self):
- from zope.interface.verify import verifyObject
- from repoze.bfg.interfaces import INodeTemplateRenderer
- path = self._getTemplatePath('minimal.xsl')
- verifyObject(INodeTemplateRenderer, self._makeOne(path))
-
- def test_class_implements_INodeTemplate(self):
- from zope.interface.verify import verifyClass
- from repoze.bfg.interfaces import INodeTemplateRenderer
- verifyClass(INodeTemplateRenderer, self._getTargetClass())
-
- def test_call(self):
- self._zcmlConfigure()
- minimal = self._getTemplatePath('minimal.xsl')
- instance = self._makeOne(minimal)
- from lxml import etree
- info = etree.Element("info")
- result = instance(node=info)
- self.failUnless(isinstance(result, str))
- resultstr = """<?xml version="1.0"?>\n<div/>\n"""
- self.assertEqual(result, resultstr)
-
-class GetTransformTests(Base, unittest.TestCase):
- def _callFUT(self, path, node):
- from repoze.bfg.xslt import get_transform
- return get_transform(path, node)
-
- def test_nonabs_registered(self):
- from zope.component import getGlobalSiteManager
- from repoze.bfg.interfaces import INodeTemplateRenderer
- renderer = {}
- gsm = getGlobalSiteManager()
- minimal = self._getTemplatePath('minimal.xsl')
- gsm.registerUtility(renderer, INodeTemplateRenderer, name=minimal)
- result = self._callFUT('fixtures/minimal.xsl', None)
- self.failUnless(result is renderer)
-
- def test_abs_registered(self):
- from zope.component import getGlobalSiteManager
- from repoze.bfg.interfaces import INodeTemplateRenderer
- renderer = {}
- gsm = getGlobalSiteManager()
- minimal = self._getTemplatePath('minimal.xsl')
- gsm.registerUtility(renderer, INodeTemplateRenderer, name=minimal)
- result = self._callFUT(minimal, None)
- self.failUnless(result is renderer)
-
- def test_unregistered(self):
- from zope.component import getGlobalSiteManager
- from zope.component import queryUtility
- from repoze.bfg.interfaces import INodeTemplateRenderer
- minimal = self._getTemplatePath('minimal.xsl')
- self.assertEqual(queryUtility(INodeTemplateRenderer, minimal), None)
- gsm = getGlobalSiteManager()
- result = self._callFUT(minimal, None)
- self.assertEqual(queryUtility(INodeTemplateRenderer, minimal).path,
- minimal)
-
- def test_unregistered_missing(self):
- from zope.component import getGlobalSiteManager
- minimal = self._getTemplatePath('notthere.xsl')
- gsm = getGlobalSiteManager()
- self.assertRaises(ValueError, self._callFUT, minimal, None)
-
-class RenderTransformToResponseTests(Base, unittest.TestCase):
- def _callFUT(self, minimal, node):
- from repoze.bfg.xslt import render_transform_to_response
- return render_transform_to_response(minimal, node=node)
-
- def test_nonabs_unregistered(self):
- self._zcmlConfigure()
- from zope.component import queryUtility
- from repoze.bfg.interfaces import INodeTemplateRenderer
- minimal = self._getTemplatePath('minimal.xsl')
- self.assertEqual(queryUtility(INodeTemplateRenderer, minimal), None)
- from lxml import etree
- info = etree.Element("info")
- result = self._callFUT(minimal, node=info)
- from webob import Response
- self.failUnless(isinstance(result, Response))
- 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)
- from repoze.bfg.xslt import XSLTemplateRenderer
- self.failUnless(isinstance(queryUtility(INodeTemplateRenderer, minimal),
- XSLTemplateRenderer))
-
- def test_nonabs_registered(self):
- self._zcmlConfigure()
- from zope.component import getGlobalSiteManager
- from zope.component import queryUtility
- from repoze.bfg.xslt import XSLTemplateRenderer
- from repoze.bfg.interfaces import INodeTemplateRenderer
- minimal = self._getTemplatePath('minimal.xsl')
- utility = XSLTemplateRenderer(minimal)
- gsm = getGlobalSiteManager()
- gsm.registerUtility(utility, INodeTemplateRenderer, name=minimal)
- from lxml import etree
- info = etree.Element("info")
- result = self._callFUT(minimal, node=info)
- from webob import Response
- self.failUnless(isinstance(result, Response))
- 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(queryUtility(INodeTemplateRenderer, minimal), utility)
-
- def test_alternate_iresponse_factory(self):
- self._zcmlConfigure()
- from repoze.bfg.interfaces import IResponseFactory
- from zope.component import getGlobalSiteManager
- gsm = getGlobalSiteManager()
- from webob import Response
- class Response2(Response):
- pass
- gsm.registerUtility(Response2, IResponseFactory)
- from zope.component import getGlobalSiteManager
- from repoze.bfg.xslt import XSLTemplateRenderer
- from repoze.bfg.interfaces import INodeTemplateRenderer
- minimal = self._getTemplatePath('minimal.xsl')
- utility = XSLTemplateRenderer(minimal)
- gsm = getGlobalSiteManager()
- gsm.registerUtility(utility, INodeTemplateRenderer, name=minimal)
- from lxml import etree
- info = etree.Element("info")
- result = self._callFUT(minimal, node=info)
- self.failUnless(isinstance(result, Response2))
-
-
-class RenderTransformTests(Base, unittest.TestCase):
- def _callFUT(self, path, node):
- from repoze.bfg.xslt import render_transform
- return render_transform(path, node=node)
-
- def test_nonabs_unregistered(self):
- self._zcmlConfigure()
- from zope.component import queryUtility
- from repoze.bfg.interfaces import INodeTemplateRenderer
- minimal = self._getTemplatePath('minimal.xsl')
- self.assertEqual(queryUtility(INodeTemplateRenderer, minimal), None)
- from lxml import etree
- info = etree.Element("info")
- result = self._callFUT(minimal, node=info)
- self.failUnless(isinstance(result, str))
- resultstr = """<?xml version="1.0"?>\n<div/>\n"""
- self.assertEqual(result, resultstr)
- from repoze.bfg.xslt import XSLTemplateRenderer
- self.failUnless(isinstance(queryUtility(INodeTemplateRenderer, minimal),
- XSLTemplateRenderer))
-
- def test_nonabs_registered(self):
- self._zcmlConfigure()
- from zope.component import getGlobalSiteManager
- from zope.component import queryUtility
- from repoze.bfg.xslt import XSLTemplateRenderer
- from repoze.bfg.interfaces import INodeTemplateRenderer
- minimal = self._getTemplatePath('minimal.xsl')
- utility = XSLTemplateRenderer(minimal)
- gsm = getGlobalSiteManager()
- gsm.registerUtility(utility, INodeTemplateRenderer, name=minimal)
- from lxml import etree
- info = etree.Element("info")
- result = self._callFUT(minimal, node=info)
- self.failUnless(isinstance(result, str))
- resultstr = """<?xml version="1.0"?>\n<div/>\n"""
- self.assertEqual(result, resultstr)
- self.assertEqual(queryUtility(INodeTemplateRenderer, minimal), utility)
-
-class TestGetProcessor(Base, unittest.TestCase):
- def _callFUT(self, fn, auto_reload=False):
- from repoze.bfg.xslt import get_processor
- return get_processor(fn, auto_reload)
-
- def test_no_processors(self):
- from lxml.etree import XSLT
- from repoze.bfg.xslt import xslt_pool
- del xslt_pool.processors
- path = self._getTemplatePath('minimal.xsl')
- result = self._callFUT(path)
- self.failUnless(isinstance(result, XSLT))
-
- def test_empty_processors(self):
- from lxml.etree import XSLT
- from repoze.bfg.xslt import xslt_pool
- xslt_pool.processors = {}
- path = self._getTemplatePath('minimal.xsl')
- result = self._callFUT(path)
- self.failUnless(isinstance(result, XSLT))
-