def test_render_from_file(self): td = self.useFixture(fixtures.TempDir()).path fname = os.path.join(td, "myfile") with open(fname, "w") as fp: fp.write(self.jinja_tmpl) rendered = templater.render_from_file(fname, self.jinja_params) self.assertEqual(rendered, self.jinja_expected)
def test_jinja_nonascii_render_from_file(self): """Test jinja render_from_file with non-ascii content.""" tmpl_fn = self.tmp_path("j-render-from-file.template") write_file(tmpl_fn, omode="wb", content=self.add_header( "jinja", self.jinja_utf8).encode('utf-8')) result = templater.render_from_file(tmpl_fn, {"name": "bob"}) self.assertEqual(result, self.jinja_utf8_rbob)
def test_jinja_warns_on_missing_dep_and_uses_basic_renderer(self): """Test jinja render_from_file will fallback to basic renderer.""" tmpl_fn = self.tmp_path("j-render-from-file.template") write_file(tmpl_fn, omode="wb", content=self.add_header( "jinja", self.jinja_utf8).encode('utf-8')) result = templater.render_from_file(tmpl_fn, {"name": "bob"}) self.assertEqual(result, self.jinja_utf8.decode()) self.assertIn( 'WARNING: Jinja not available as the selected renderer for desired' ' template, reverting to the basic renderer.', self.logs.getvalue())