コード例 #1
0
def test_default():
    t = HtmlTemplate()
    eq_(t.from_string('<TMPL_VAR NAME="foo" DEFAULT="Hello World!">'),
        "{{ foo|default('Hello World!') }}")
    eq_(t.from_string('<TMPL_VAR NAME="foo" DEFAULT="Hello\'world">'),
        "{{ foo|default('Hello\'world') }}",
        msg='escape single quote')
    eq_("{{ foo|default('Hello World!')|e }}",
        t.from_string('<TMPL_VAR NAME="foo" ESCAPE="html"'
                      ' DEFAULT="Hello World!">'),
        msg='TMPL_VAR escape and default')
コード例 #2
0
def test_tmpl_var():
    t = HtmlTemplate()
    eq_('{{ foo }}', t.from_string('<TMPL_VAR NAME="foo">'), msg='TMPL_VAR')
    eq_('Subject:{{ foo }}',
        t.from_string('Subject:<TMPL_VAR NAME="foo">'),
        msg='prefix')
    eq_('{{ foo }}<br />',
        t.from_string('<TMPL_VAR NAME="foo"><br />'),
        msg='suffix')
    eq_('{{ foo }}{{ bar }}',
        t.from_string('<TMPL_VAR NAME="foo"><TMPL_VAR NAME="bar">'),
        msg='repeat')
コード例 #3
0
def test_escape():
    t = HtmlTemplate()
    eq_(t.from_string('<TMPL_VAR NAME="foo" ESCAPE="html">'),
        '{{ foo|e }}',
        msg='TMPL_VAR escape html')
    eq_(t.from_string('<TMPL_VAR NAME="foo" ESCAPE="1">'),
        '{{ foo|e }}',
        msg='TMPL_VAR old escape html')
    eq_(t.from_string('<TMPL_VAR NAME="foo" ESCAPE="url">'),
        '{{ foo|urlencode }}',
        msg='TMPL_VAR escape url')
    eq_(t.from_string('<TMPL_VAR NAME="foo" ESCAPE="js">'),
        '{{ foo|tojson }}',
        msg='TMPL_VAR escape json')
    eq_(t.from_string('<TMPL_VAR NAME="foo" ESCAPE="none">'),
        '{{ foo }}',
        msg='TMPL_VAR escape none')
コード例 #4
0
ファイル: loaders.py プロジェクト: oyama/jinja2_htmltemplate
 def get_source(self, environment, template):
     source, filename, uptodate = super().get_source(environment, template)
     return HtmlTemplate().from_string(source), filename, uptodate
コード例 #5
0
def test_tmpl_include():
    t = HtmlTemplate()
    out = t.from_string('<TMPL_INCLUDE NAME="foo.html">')
    eq_('{% include "foo.html" %}', out)
コード例 #6
0
def test_tmpl_if():
    t = HtmlTemplate()
    eq_(t.from_string(
        '<TMPL_UNLESS NAME="cond">True</TMPL_UNLESS>'),
        '{% if not cond %}True{% endif %}', msg='TMPL_UNLESS')
コード例 #7
0
def test_tmpl_else():
    t = HtmlTemplate()
    eq_(t.from_string(
        '<TMPL_UNLESS NAME="cond">False<TMPL_ELSE>True</TMPL_UNLESS>'),
        '{% if not cond %}False{% else %}True{% endif %}',
        msg='TMPL_UNLESS/ELSE')
コード例 #8
0
 def __new__(cls, html_template):
     source = HtmlTemplate().from_string(html_template)
     return super().__new__(cls, source)
コード例 #9
0
def test_tmpl_if():
    t = HtmlTemplate()
    eq_(t.from_string('<TMPL_IF NAME="cond">True</TMPL_IF>'),
        '{% if cond %}True{% endif %}',
        msg='TMPL_IF')