def test_render_template_with_variables(self): def key_globber(e): if e == "dynamic-key-*": return ["dynamic-key-1"] else: return [] template = """ {% set clients = 16 %} {% import "rally.helpers" as rally with context %} { "key1": "static value", {{ rally.collect(parts="dynamic-key-*") }} } """ rendered = loader.render_template(loader=jinja2.DictLoader({ "unittest": template, "dynamic-key-1": '"dkey1": {{ clients }}', }), template_name="unittest", glob_helper=key_globber, clock=StaticClock) expected = """ { "key1": "static value", "dkey1": 16 } """ self.assertEqualIgnoreWhitespace(expected, rendered)
def test_render_template(self): template = """ { "key": {{'01-01-2000' | days_ago(now)}}, "key2": "static value" } """ rendered = loader.render_template(loader=jinja2.DictLoader({"unittest": template}), template_name="unittest", clock=StaticClock) expected = """ { "key": 5864, "key2": "static value" } """ self.assertEqual(expected, rendered)
def test_render_template_with_globbing(self): def key_globber(e): if e == "dynamic-key-*": return [ "dynamic-key-1", "dynamic-key-2", "dynamic-key-3", ] else: return [] template = """ {% import "rally.helpers" as rally %} { "key1": "static value", {{ rally.collect(parts="dynamic-key-*") }} } """ rendered = loader.render_template(loader=jinja2.DictLoader({ "unittest": template, "dynamic-key-1": '"dkey1": "value1"', "dynamic-key-2": '"dkey2": "value2"', "dynamic-key-3": '"dkey3": "value3"', }), template_name="unittest", glob_helper=key_globber, clock=StaticClock) expected = """ { "key1": "static value", "dkey1": "value1", "dkey2": "value2", "dkey3": "value3" } """ self.assertEqualIgnoreWhitespace(expected, rendered)