summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris McDonough <chrism@plope.com>2012-09-09 22:06:22 -0400
committerChris McDonough <chrism@plope.com>2012-09-09 22:06:22 -0400
commit03a5196f34ea455d2222c813b1d80ebd0e3619d5 (patch)
treef033c09fc25daa071182728e8dbb741f9857eb41
parentdcbe7d5e36a15010915366cd74680574ca1f518f (diff)
downloadpyramid-03a5196f34ea455d2222c813b1d80ebd0e3619d5.tar.gz
pyramid-03a5196f34ea455d2222c813b1d80ebd0e3619d5.tar.bz2
pyramid-03a5196f34ea455d2222c813b1d80ebd0e3619d5.zip
coverage for renderer_factory in chameleon_zpt and chameleon_text
-rw-r--r--pyramid/chameleon_text.py2
-rw-r--r--pyramid/tests/test_chameleon_text.py31
-rw-r--r--pyramid/tests/test_chameleon_zpt.py30
3 files changed, 62 insertions, 1 deletions
diff --git a/pyramid/chameleon_text.py b/pyramid/chameleon_text.py
index f1afb86b5..3484b7973 100644
--- a/pyramid/chameleon_text.py
+++ b/pyramid/chameleon_text.py
@@ -28,6 +28,8 @@ class TextTemplateRenderer(object):
def __init__(self, path, lookup, macro=None):
self.path = path
self.lookup = lookup
+ # text template renderers have no macros, so we ignore the
+ # macro arg
@reify # avoid looking up reload_templates before manager pushed
def template(self):
diff --git a/pyramid/tests/test_chameleon_text.py b/pyramid/tests/test_chameleon_text.py
index 87e8028b7..297e96554 100644
--- a/pyramid/tests/test_chameleon_text.py
+++ b/pyramid/tests/test_chameleon_text.py
@@ -1,10 +1,11 @@
+import sys
import unittest
from pyramid.compat import binary_type
from pyramid.testing import skip_on
from pyramid import testing
-class Base:
+class Base(object):
def setUp(self):
self.config = testing.setUp()
@@ -16,6 +17,18 @@ class Base:
here = os.path.abspath(os.path.dirname(__file__))
return os.path.join(here, 'fixtures', name)
+class Test_renderer_factory(Base, unittest.TestCase):
+ def _callFUT(self, info):
+ from pyramid.chameleon_text import renderer_factory
+ return renderer_factory(info)
+
+ def test_it(self):
+ # this test is way too functional
+ from pyramid.chameleon_text import TextTemplateRenderer
+ info = DummyInfo()
+ result = self._callFUT(info)
+ self.assertEqual(result.__class__, TextTemplateRenderer)
+
class TextTemplateRendererTests(Base, unittest.TestCase):
def _getTargetClass(self):
from pyramid.chameleon_text import TextTemplateRenderer
@@ -123,4 +136,20 @@ class DummyLookup(object):
auto_reload=True
debug = True
def translate(self, msg): pass
+
+class DummyRegistry(object):
+ def queryUtility(self, iface, name):
+ self.queried = iface, name
+ return None
+
+ def registerUtility(self, impl, iface, name):
+ self.registered = impl, iface, name
+
+class DummyInfo(object):
+ def __init__(self):
+ self.registry = DummyRegistry()
+ self.type = '.pt'
+ self.name = 'fixtures/minimal.pt'
+ self.package = sys.modules[__name__]
+ self.settings = {}
diff --git a/pyramid/tests/test_chameleon_zpt.py b/pyramid/tests/test_chameleon_zpt.py
index ac39d92bc..4de04aa4a 100644
--- a/pyramid/tests/test_chameleon_zpt.py
+++ b/pyramid/tests/test_chameleon_zpt.py
@@ -1,3 +1,4 @@
+import sys
import unittest
from pyramid.testing import skip_on
@@ -16,6 +17,18 @@ class Base(object):
here = os.path.abspath(os.path.dirname(__file__))
return os.path.join(here, 'fixtures', name)
+class Test_renderer_factory(Base, unittest.TestCase):
+ def _callFUT(self, info):
+ from pyramid.chameleon_zpt import renderer_factory
+ return renderer_factory(info)
+
+ def test_it(self):
+ # this test is way too functional
+ from pyramid.chameleon_zpt import ZPTTemplateRenderer
+ info = DummyInfo()
+ result = self._callFUT(info)
+ self.assertEqual(result.__class__, ZPTTemplateRenderer)
+
class ZPTTemplateRendererTests(Base, unittest.TestCase):
def _getTargetClass(self):
from pyramid.chameleon_zpt import ZPTTemplateRenderer
@@ -127,3 +140,20 @@ class DummyLookup(object):
auto_reload=True
debug = True
def translate(self, msg): pass
+
+class DummyRegistry(object):
+ def queryUtility(self, iface, name):
+ self.queried = iface, name
+ return None
+
+ def registerUtility(self, impl, iface, name):
+ self.registered = impl, iface, name
+
+class DummyInfo(object):
+ def __init__(self):
+ self.registry = DummyRegistry()
+ self.type = '.pt'
+ self.name = 'fixtures/minimal.pt'
+ self.package = sys.modules[__name__]
+ self.settings = {}
+