当前位置: 首页>>代码示例>>Python>>正文


Python test__compiler.render函数代码示例

本文整理汇总了Python中pybars.tests.test__compiler.render函数的典型用法代码示例。如果您正苦于以下问题:Python render函数的具体用法?Python render怎么用?Python render使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了render函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_block_helper_inverted_sections

 def test_block_helper_inverted_sections(self):
     def list(this, options, context):
         if len(context):
             out = "<ul>"
             for thing in context:
                 out += "<li>"
                 out += str_class(options['fn'](thing))
                 out += "</li>"
             out += "</ul>"
             return out
         else:
             return "<p>" + str_class(options['inverse'](this)) + "</p>"
     context = {'people': [{'name': "Alan"}, {'name': "Yehuda"}]}
     empty = {'people': []}
     rootMessage = {'people': [], 'message': "Nobody's here"}
     src1 = u"{{#list people}}{{name}}{{^}}<em>Nobody's here</em>{{/list}}"
     src2 = u"{{#list people}}Hello{{^}}{{message}}{{/list}}"
     src3 = u"{{#list people}}{{name}}{{else}}<em>Nobody's here</em>{{/list}}"
     helpers = {'list': list}
     # inverse not executed by helper:
     self.assertEqual("<ul><li>Alan</li><li>Yehuda</li></ul>",
         render(src1, context, helpers))
     # inverse can be called by a helper
     self.assertEqual("<p><em>Nobody's here</em></p>",
         render(src1, empty, helpers))
     # the expected context of the inverse is the this parameter to block
     # helpers.
     self.assertEqual("<p>Nobody&#x27;s here</p>",
         render(src2, rootMessage, helpers=helpers))
     # inverse can also be denoted by 'else':
     self.assertEqual("<ul><li>Alan</li><li>Yehuda</li></ul>",
         render(src3, context, helpers))
     self.assertEqual("<p><em>Nobody's here</em></p>",
         render(src3, empty, helpers))
开发者ID:closeio,项目名称:pybars,代码行数:34,代码来源:test_acceptance.py

示例2: test_zeros

 def test_zeros(self):
     self.assertEqual("num1: 42, num2: 0",
         render(u"num1: {{num1}}, num2: {{num2}}", {'num1': 42, 'num2': 0}))
     self.assertEqual("num: 0",
         render(u"num: {{.}}", 0))
     self.assertEqual("num: 0",
         render(u"num: {{num1/num2}}", {'num1': {'num2': 0}}))
开发者ID:closeio,项目名称:pybars,代码行数:7,代码来源:test_acceptance.py

示例3: test_negative_int_literal

 def test_negative_int_literal(self):
     self.assertEqual("str int int",
         render(u"{{type \"string\"}} {{type 1}} {{type -1}}", None,
         helpers={'type': lambda s, v: type(v).__name__}))
     self.assertEqual("string 1 -1",
         render(u"{{echo \"string\"}} {{echo 1}} {{echo -1}}", None,
         helpers={'echo': lambda s, v: str(v)}))
开发者ID:closeio,项目名称:pybars,代码行数:7,代码来源:test_acceptance.py

示例4: test_escaping_expressions

 def test_escaping_expressions(self):
     self.assertEqual('&\"\\<>',
         render(u"{{{awesome}}}", {'awesome': "&\"\\<>"}))
     self.assertEqual('&\"\\<>',
         render(u"{{&awesome}}", {'awesome': "&\"\\<>"}))
     self.assertEqual(u'&amp;&quot;&#x27;&#x60;\\&lt;&gt;',
         render(u"{{awesome}}", {'awesome': "&\"'`\\<>"}))
开发者ID:closeio,项目名称:pybars,代码行数:7,代码来源:test_acceptance.py

示例5: test_providing_a_helpers_hash

 def test_providing_a_helpers_hash(self):
     self.assertEqual("Goodbye cruel world!",
         render(u"Goodbye {{cruel}} {{world}}!", {'cruel': "cruel"},
             helpers={'world': "world"}))
     self.assertEqual("Goodbye cruel world!",
         render(u"Goodbye {{#iter}}{{cruel}} {{world}}{{/iter}}!",
             {'iter': [{'cruel': "cruel"}]},
             helpers={'world': "world"}))
开发者ID:closeio,项目名称:pybars,代码行数:8,代码来源:test_acceptance.py

示例6: test_booleans

 def test_booleans(self):
     template = u"{{#goodbye}}GOODBYE {{/goodbye}}cruel {{world}}!"
     self.assertEqual(
         "GOODBYE cruel world!",
         render(template, {'goodbye': True, 'world': 'world'}))
     self.assertEqual(
         "cruel world!",
         render(template, {'goodbye': False, 'world': 'world'}))
开发者ID:closeio,项目名称:pybars,代码行数:8,代码来源:test_acceptance.py

示例7: test_functions_can_take_context_arguments

 def test_functions_can_take_context_arguments(self):
     def awesome(this, context):
         return context
     self.assertEqual("Frank",
         render(u"{{awesome frank}}",
             {'awesome': awesome, 'frank': 'Frank'}))
     self.assertEqual("Frank",
         render(u"{{{awesome frank}}}",
             {'awesome': awesome, 'frank': 'Frank'}))
开发者ID:closeio,项目名称:pybars,代码行数:9,代码来源:test_acceptance.py

示例8: test_each

 def test_each(self):
     source = u"{{#each goodbyes}}{{text}}! {{/each}}cruel {{world}}!"
     context = {'goodbyes':
         [{'text': "goodbye"}, {'text': "Goodbye"}, {'text': "GOODBYE"}],
         'world': "world"}
     self.assertEqual("goodbye! Goodbye! GOODBYE! cruel world!",
         render(source, context))
     self.assertEqual("cruel world!",
         render(source, {'goodbyes': [], 'world': "world"}))
开发者ID:closeio,项目名称:pybars,代码行数:9,代码来源:test_acceptance.py

示例9: test_empty_block

 def test_empty_block(self):
     source = u"{{#goodbyes}}{{/goodbyes}}cruel {{world}}!"
     context = {
         'goodbyes': [
             {'text': "goodbye"}, {'text': "Goodbye"}, {'text': "GOODBYE"}],
         'world': "world"}
     self.assertEqual("cruel world!", render(source, context))
     self.assertEqual("cruel world!",
         render(source, {'goodbyes': [], 'world': "world"}))
开发者ID:closeio,项目名称:pybars,代码行数:9,代码来源:test_acceptance.py

示例10: test_in_cases_of_conflict_helpers_before_context

 def test_in_cases_of_conflict_helpers_before_context(self):
     self.assertEqual("helpers",
         render(u"{{lookup}}", {'lookup': 'Explicit'},
             helpers={'lookup': 'helpers'}))
     self.assertEqual("helpers",
         render(u"{{{lookup}}}", {'lookup': 'Explicit'},
             helpers={'lookup': 'helpers'}))
     self.assertEqual("Explicit",
         render(u"{{#lookup}}Explicit{{/lookup}}", {'lookup': []},
             helpers={'lookup': [{}]}))
开发者ID:closeio,项目名称:pybars,代码行数:10,代码来源:test_acceptance.py

示例11: test_inverted_sections

 def test_inverted_sections(self):
     source = (
         u"{{#goodbyes}}{{this}}{{/goodbyes}}"
         u"{{^goodbyes}}Right On!{{/goodbyes}}")
     # Unset value
     self.assertEqual("Right On!", render(source, {}))
     # False value
     self.assertEqual("Right On!", render(source, {'goodbyes': False}))
     # Empty list
     self.assertEqual("Right On!", render(source, {'goodbyes': []}))
开发者ID:closeio,项目名称:pybars,代码行数:10,代码来源:test_acceptance.py

示例12: test_if_with_function_argument

 def test_if_with_function_argument(self):
     source = u"{{#if goodbye}}GOODBYE {{/if}}cruel {{world}}!"
     self.assertEqual(u"GOODBYE cruel world!",
         render(source, {'goodbye': lambda this: True, 'world': "world"}))
     self.assertEqual(u"GOODBYE cruel world!",
         render(source,
             {'goodbye': lambda this: this['world'], 'world': "world"}))
     self.assertEqual(u"cruel world!",
         render(source, {'goodbye': lambda this: False, 'world': "world"}))
     self.assertEqual(u"cruel world!",
         render(source, {'goodbye': lambda this: None, 'world': "world"}))
开发者ID:closeio,项目名称:pybars,代码行数:11,代码来源:test_acceptance.py

示例13: test_block_helpers_can_take_an_optional_hash_with_booleans

 def test_block_helpers_can_take_an_optional_hash_with_booleans(self):
     def goodbye(this, options, cruel, _print):
         if _print is True:
             return "GOODBYE " + cruel + " " + str_class(options['fn'](this))
         elif _print is False:
             return "NOT PRINTING"
         else:
             return "THIS SHOULD NOT HAPPEN"
     helpers = {'goodbye': goodbye}
     self.assertEqual("GOODBYE CRUEL world",
         render(u'{{#goodbye cruel="CRUEL" _print=true}}world{{/goodbye}}',
             {}, helpers=helpers))
     self.assertEqual("NOT PRINTING",
         render(u'{{#goodbye cruel="CRUEL" _print=false}}world{{/goodbye}}',
             {}, helpers=helpers))
开发者ID:closeio,项目名称:pybars,代码行数:15,代码来源:test_acceptance.py

示例14: test_helpers_can_take_an_optional_hash_with_booleans

 def test_helpers_can_take_an_optional_hash_with_booleans(self):
     def goodbye(this, cruel, world, _print):
         if _print is True:
             return "GOODBYE " + cruel + " " + world
         elif _print is False:
             return "NOT PRINTING"
         else:
             return "THIS SHOULD NOT HAPPEN"
     helpers = {'goodbye': goodbye}
     self.assertEqual("GOODBYE CRUEL WORLD",
         render(u'{{goodbye cruel="CRUEL" world="WORLD" _print=true}}',
             {}, helpers=helpers))
     self.assertEqual("NOT PRINTING",
         render(u'{{goodbye cruel="CRUEL" world="WORLD" _print=false}}',
             {}, helpers=helpers))
开发者ID:closeio,项目名称:pybars,代码行数:15,代码来源:test_acceptance.py

示例15: test_block_helpers_can_take_an_optional_hash

 def test_block_helpers_can_take_an_optional_hash(self):
     source = u'{{#goodbye cruel="CRUEL" times=12}}world{{/goodbye}}'
     def goodbye(this, options, times, cruel):
         return "GOODBYE " + cruel + " " + str_class(options['fn'](this)) + " " + str(times) + " TIMES"
     helpers = {'goodbye': goodbye}
     self.assertEqual("GOODBYE CRUEL world 12 TIMES",
         render(source, {}, helpers=helpers))
开发者ID:closeio,项目名称:pybars,代码行数:7,代码来源:test_acceptance.py


注:本文中的pybars.tests.test__compiler.render函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。