diff options
| author | Chris McDonough <chrism@agendaless.com> | 2009-05-01 10:26:57 +0000 |
|---|---|---|
| committer | Chris McDonough <chrism@agendaless.com> | 2009-05-01 10:26:57 +0000 |
| commit | ba9b0e647bff1bf0c437ab204ddf11783ed698f8 (patch) | |
| tree | 1952ebfdc40ae71a3bc54eb10a92a0fe1e8273ec /repoze/bfg/tests/test_xslt.py | |
| parent | bc0698e1ac67106346d8c006bddcb38370f7c16b (diff) | |
| download | pyramid-ba9b0e647bff1bf0c437ab204ddf11783ed698f8.tar.gz pyramid-ba9b0e647bff1bf0c437ab204ddf11783ed698f8.tar.bz2 pyramid-ba9b0e647bff1bf0c437ab204ddf11783ed698f8.zip | |
Merge "c-free" branch to trunk.
Diffstat (limited to 'repoze/bfg/tests/test_xslt.py')
| -rw-r--r-- | repoze/bfg/tests/test_xslt.py | 221 |
1 files changed, 0 insertions, 221 deletions
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)) - |
