def test_render(self): content = "Hello World!" self.assertEqual(content, jinjaenv.get().render_string(content)) content = "{% for i in range(10) %}{{ i }}{% endfor %}" self.assertEqual("0123456789", jinjaenv.get().render_string(content)) content = "{% trans %}Pouac{% endtrans %}" self.assertEqual("Pouac", jinjaenv.get().render_string(content))
def test_render_path(self): path = os.path.join(self.src_path, "_foo.html") # No variables with open(path, "w") as f: f.write("catch") filters.add_alias("blog", "_foo.html") self.assertEqual("catch", jinjaenv.get().render_relative_path("blog")) self.assertEqual("catch", jinjaenv.get().render_path(os.path.join(self.src_path, "blog"))) # No variables with open(path, "w") as f: f.write("catch {{ times }}") filters.add_alias("blog", "_foo.html", {"times": 22}) self.assertEqual(22, jinjaenv.get().get_variable("blog", "times")) jinjaenv.get().set_variable("_foo.html", "times", 32) self.assertEqual(32, jinjaenv.get().get_variable("_foo.html", "times")) self.assertEqual("catch 32", jinjaenv.get().render_template("_foo.html")) self.assertEqual("catch 32", jinjaenv.get().render_relative_path("_foo.html")) self.assertEqual("catch 42", jinjaenv.get().render_template("_foo.html", {"times": 42})) self.assertEqual("catch 22", jinjaenv.get().render_relative_path("blog"))
def test_set_date(self): string = "{{ 'Title'|set_date('2013-11') }}" result = jinjaenv.get().render_string(string) self.assertEqual("", result) self.assertEqual("2013-11", filters.get_date("Title"))
def test_filters_are_registered(self): env = jinjaenv.get()._jinja_env self.assertIn("set_date", env.filters.keys()) self.assertIn("get_date", env.filters.keys()) self.assertEqual(filters.set_date, env.filters["set_date"]) self.assertEqual(filters.get_date, env.filters["get_date"])