def test_directory(self): from pyramid_jinja2 import includeme config = testing.setUp() config.registry.settings['jinja2.bytecode_caching_directory'] = '/foobar' includeme(config) env = config.get_jinja2_environment() self.assertEqual(env.bytecode_cache.directory, text_('/foobar'))
def test_caller_relative_tmpl_extends_relbase(self): from pyramid.renderers import render # this should pass as it will fallback to the new search path # and find it from there self.config.add_jinja2_search_path('pyramid_jinja2.tests:') result = render('templates/extends_relbase.jinja2', {'a': 1}) self.assertEqual(result, text_('\nHello fööYo!', 'utf-8'))
def test_relative_tmpl_extends_relbase(self): from pyramid.renderers import render # this should pass as it will fallback to the new search path # and find it from there self.config.add_jinja2_search_path('pyramid_jinja2.tests:') result = render('extends_relbase.jinja2', {'a': 1}) self.assertEqual(result, text_('\nHello fööYo!', 'utf-8'))
def test_abs_tmpl_extends(self): import os.path from pyramid.renderers import render here = os.path.abspath(os.path.dirname(__file__)) result = render(os.path.join(here, 'templates', 'extends.jinja2'), {'a': 1}) self.assertEqual(result, text_('\nHello fööYo!', 'utf-8'))
def test_recursive_tmpl(self): from pyramid.renderers import render self.config.add_jinja2_renderer('.html') self.config.add_jinja2_search_path( 'pyramid_jinja2.tests:templates/recursive', name='.html') result = render('admin/index.html', {}) self.assertEqual(result, text_('foo'))
def test_recursive_tmpl(self): from pyramid.renderers import render self.config.add_jinja2_renderer('.html') self.config.add_jinja2_search_path( 'pyramid_jinja2.tests:templates/recursive', name='.html') result = render('admin/index.html', {}) self.assertEqual(result, text_('foo'))
def test_abs_tmpl_extends(self): import os.path from pyramid.renderers import render here = os.path.abspath(os.path.dirname(__file__)) result = render(os.path.join(here, 'templates', 'extends.jinja2'), {'a': 1}) self.assertEqual(result, text_('\nHello fööYo!', 'utf-8'))
def test_directory(self): from pyramid_jinja2 import includeme config = testing.setUp() config.registry.settings[ 'jinja2.bytecode_caching_directory'] = '/foobar' includeme(config) env = config.get_jinja2_environment() self.assertEqual(env.bytecode_cache.directory, text_('/foobar'))
def test_filter_and_test_works_in_render(self): import pyramid_jinja2 from pyramid.renderers import render config = testing.setUp() config.add_settings({ 'jinja2.directories': 'pyramid_jinja2.tests:templates', 'jinja2.tests': 'my_test = pyramid_jinja2.tests.test_it.my_test_func', 'jinja2.filters': 'my_filter = pyramid_jinja2.tests.test_it.my_test_func' }) config.add_renderer('.jinja2', pyramid_jinja2.renderer_factory) result = render('tests_and_filters.jinja2', {}) #my_test_func returs "True" - it will be render as True when usign # as filter and will pass in tests self.assertEqual(result, text_('True is not False', 'utf-8')) testing.tearDown()
def test_filter_and_test_and_global_works_in_render(self): from pyramid.renderers import render config = testing.setUp() config.include('pyramid_jinja2') config.add_settings({ 'jinja2.directories': 'pyramid_jinja2.tests:templates', 'jinja2.tests': 'my_test = pyramid_jinja2.tests.test_it.my_test_func', 'jinja2.filters': 'my_filter = pyramid_jinja2.tests.test_it.my_test_func', 'jinja2.globals': 'my_global = pyramid_jinja2.tests.test_it.my_test_func' }) config.add_jinja2_renderer('.jinja2') result = render('tests_and_filters.jinja2', {}) #my_test_func returs "True" - it will be render as True when usign # as filter and will pass in tests self.assertEqual(result, text_('True is not False True', 'utf-8')) testing.tearDown()
def test_delay_init(self): from pyramid_jinja2 import FileInfo class MyFileInfo(FileInfo): filename = 'foo.jinja2' def __init__(self, data): self.data = data FileInfo.__init__(self, self.filename) def open_if_exists(self, fname): return StringIO(self.data) def getmtime(self, fname): return 1 mi = MyFileInfo(text_('nothing good here, move along')) mi._delay_init() self.assertEqual(mi._contents, mi.data)
def test_delay_init(self): from pyramid_jinja2 import FileInfo class MyFileInfo(FileInfo): filename = 'foo.jinja2' def __init__(self, data): self.data = data FileInfo.__init__(self, self.filename) def open_if_exists(self, fname): return StringIO(self.data) def getmtime(self, fname): return 1 mi = MyFileInfo(text_('nothing good here, move along')) mi._delay_init() self.assertEqual(mi._contents, mi.data)
def test_it(self): from pyramid.config import Configurator from pyramid_jinja2 import includeme from webtest import TestApp import os here = os.path.abspath(os.path.dirname(__file__)) templates_dir = os.path.join(here, 'templates') def myview(request): return {'what': 'eels'} config = Configurator(settings={ 'jinja2.directories': templates_dir, 'jinja2.newstyle': True}) includeme(config) config.add_view(view=myview, renderer='newstyle.jinja2') app = config.make_wsgi_app() testapp = TestApp(app) self.assertEqual(testapp.get('/').body.decode('utf-8'), text_('my hovercraft is full of eels!'))
def test_it(self): from pyramid.config import Configurator from pyramid_jinja2 import includeme from webtest import TestApp import os here = os.path.abspath(os.path.dirname(__file__)) templates_dir = os.path.join(here, 'templates') def myview(request): return {'what': 'eels'} config = Configurator(settings={ 'jinja2.directories': templates_dir, 'jinja2.newstyle': True}) includeme(config) config.add_view(view=myview, renderer='newstyle.jinja2') app = config.make_wsgi_app() testapp = TestApp(app) self.assertEqual(testapp.get('/').body.decode('utf-8'), text_('my hovercraft is full of eels!'))
def test_delay_init(self): from pyramid_jinja2 import FileInfo, TemplateRenderingError class MyFileInfo(FileInfo): filename = 'foo.jinja2' def __init__(self, data): self.data = data FileInfo.__init__(self, self.filename) def open_if_exists(self, fname): return StringIO(self.data) def getmtime(self, fname): return 1 mi = MyFileInfo(text_('nothing good here, move along')) mi._delay_init() self.assertEqual(mi._contents, mi.data) if not PY3: mi = MyFileInfo(bytes_('nothing good her\xe9, move along')) self.assertRaises(TemplateRenderingError, mi._delay_init)
def test_delay_init(self): from pyramid_jinja2 import FileInfo, TemplateRenderingError class MyFileInfo(FileInfo): filename = 'foo.jinja2' def __init__(self, data): self.data = data FileInfo.__init__(self, self.filename) def open_if_exists(self, fname): return StringIO(self.data) def getmtime(self, fname): return 1 mi = MyFileInfo(text_('nothing good here, move along')) mi._delay_init() self.assertEqual(mi._contents, mi.data) if not PY3: mi = MyFileInfo(bytes_('nothing good her\xe9, move along')) self.assertRaises(TemplateRenderingError, mi._delay_init)
def render(self, values): self.values = values return text_('result')
def test_relative_tmpl_extends(self): from pyramid.renderers import render result = render('templates/extends.jinja2', {}) self.assertEqual(result, text_('\nHello fööYo!', 'utf-8'))
def test_render(self): from pyramid.renderers import render result = render('helloworld.jinja2', {'a': 1}) self.assertEqual(result, text_('\nHello föö', 'utf-8'))
def test_render_relative_to_package(self): from pyramid.renderers import render result = render('templates/helloworld.jinja2', {'a': 1}) self.assertEqual(result, text_('\nHello föö', 'utf-8'))
def test_relative_tmpl_extends(self): from pyramid.renderers import render result = render('templates/extends.jinja2', {}) self.assertEqual(result, text_('\nHello fööYo!', 'utf-8'))
def test_asset_tmpl_deep_leaf(self): from pyramid.renderers import render result = render('pyramid_jinja2.tests:templates/deep/leaf.jinja2', {}) self.assertEqual( result, text_('sub-nav\n\ndeep-formsdeep-base deep-leaf', 'utf-8'))
def test_render(self): from pyramid.renderers import render result = render('helloworld.jinja2', {'a': 1}) self.assertEqual(result, text_('\nHello föö', 'utf-8'))
def test_render_relative_to_package(self): from pyramid.renderers import render result = render('templates/helloworld.jinja2', {'a': 1}) self.assertEqual(result, text_('\nHello föö', 'utf-8'))
def test_asset_tmpl_extends(self): from pyramid.renderers import render result = render('pyramid_jinja2.tests:templates/extends.jinja2', {'a': 1}) self.assertEqual(result, text_('\nHello fööYo!', 'utf-8'))
def test_tmpl_extends_abs(self): from pyramid.renderers import render result = render('extends_abs.jinja2', {'a': 1}) self.assertEqual(result, text_('\nHello fööYo!', 'utf-8'))
def test_tmpl_extends_spec(self): from pyramid.renderers import render result = render('extends_spec.jinja2', {'a': 1}) self.assertEqual(result, text_('\nHello fööYo!', 'utf-8'))
def test_asset_tmpl_extends(self): from pyramid.renderers import render result = render('pyramid_jinja2.tests:templates/extends.jinja2', {'a': 1}) self.assertEqual(result, text_('\nHello fööYo!', 'utf-8'))
def test_asset_tmpl_deep_leaf(self): from pyramid.renderers import render result = render('pyramid_jinja2.tests:templates/deep/leaf.jinja2', {}) self.assertEqual( result, text_('sub-nav\n\ndeep-formsdeep-base deep-leaf', 'utf-8'))