From 255046b3f3484219bbfa6646c88bbc4bbc1b5256 Mon Sep 17 00:00:00 2001 From: "Chris St. Pierre" Date: Fri, 16 Nov 2012 14:40:42 -0500 Subject: Templating updates: * Added "repo" variable to all template formats * Made variables available in Genshi and Cheetah template more similar * Improved docs --- .../TestPlugins/TestCfg/TestCfgCheetahGenerator.py | 11 +++++++- .../TestPlugins/TestCfg/TestCfgGenshiGenerator.py | 30 +++++++++++++--------- 2 files changed, 28 insertions(+), 13 deletions(-) (limited to 'testsuite/Testsrc') diff --git a/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgCheetahGenerator.py b/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgCheetahGenerator.py index 1832e5e03..fc5d5e53d 100644 --- a/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgCheetahGenerator.py +++ b/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgCheetahGenerator.py @@ -31,9 +31,18 @@ if HAS_CHEETAH or can_skip: ccg.data = "data" entry = lxml.etree.Element("Path", name="/test.txt") metadata = Mock() + Bcfg2.Server.Plugins.Cfg.CfgCheetahGenerator.SETUP = MagicMock() self.assertEqual(ccg.get_data(entry, metadata), mock_Template.return_value.respond.return_value) + Bcfg2.Server.Plugins.Cfg.CfgCheetahGenerator.SETUP.__getitem__.assert_called_with("repo") mock_Template.assert_called_with("data".decode(ccg.encoding), compilerSettings=ccg.settings) - mock_Template.return_value.respond.assert_called_with() + tmpl = mock_Template.return_value + tmpl.respond.assert_called_with() + self.assertEqual(tmpl.metadata, metadata) + self.assertEqual(tmpl.name, entry.get("name")) + self.assertEqual(tmpl.path, entry.get("name")) + self.assertEqual(tmpl.source_path, ccg.name) + self.assertEqual(tmpl.repo, + Bcfg2.Server.Plugins.Cfg.CfgCheetahGenerator.SETUP.__getitem__.return_value) diff --git a/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgGenshiGenerator.py b/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgGenshiGenerator.py index 4a849c11a..385f8df77 100644 --- a/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgGenshiGenerator.py +++ b/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgGenshiGenerator.py @@ -51,15 +51,24 @@ if can_skip or HAS_GENSHI: entry = lxml.etree.Element("Path", name="/test.txt") metadata = Mock() + Bcfg2.Server.Plugins.Cfg.CfgGenshiGenerator.SETUP = MagicMock() + def reset(): cgg.template.reset_mock() cgg._handle_genshi_exception.reset_mock() + Bcfg2.Server.Plugins.Cfg.CfgGenshiGenerator.SETUP.reset_mock() + + template_vars = dict( + name=entry.get("name"), + metadata=metadata, + path=cgg.name, + source_path=cgg.name, + repo=Bcfg2.Server.Plugins.Cfg.CfgGenshiGenerator.SETUP.__getitem__.return_value) self.assertEqual(cgg.get_data(entry, metadata), stream.render.return_value) - cgg.template.generate.assert_called_with(name=entry.get("name"), - metadata=metadata, - path=cgg.name) + cgg.template.generate.assert_called_with(**template_vars) + Bcfg2.Server.Plugins.Cfg.CfgGenshiGenerator.SETUP.__getitem__.assert_called_with("repo") fltr.filter.assert_called_with(removecomment) stream.render.assert_called_with("text", encoding=cgg.encoding, strip_whitespace=False) @@ -71,9 +80,8 @@ if can_skip or HAS_GENSHI: stream.render.side_effect = render self.assertEqual(cgg.get_data(entry, metadata), stream.render.return_value) - cgg.template.generate.assert_called_with(name=entry.get("name"), - metadata=metadata, - path=cgg.name) + cgg.template.generate.assert_called_with(**template_vars) + Bcfg2.Server.Plugins.Cfg.CfgGenshiGenerator.SETUP.__getitem__.assert_called_with("repo") fltr.filter.assert_called_with(removecomment) self.assertEqual(stream.render.call_args_list, [call("text", encoding=cgg.encoding, @@ -84,9 +92,8 @@ if can_skip or HAS_GENSHI: stream.render.side_effect = UndefinedError("test") self.assertRaises(UndefinedError, cgg.get_data, entry, metadata) - cgg.template.generate.assert_called_with(name=entry.get("name"), - metadata=metadata, - path=cgg.name) + cgg.template.generate.assert_called_with(**template_vars) + Bcfg2.Server.Plugins.Cfg.CfgGenshiGenerator.SETUP.__getitem__.assert_called_with("repo") fltr.filter.assert_called_with(removecomment) stream.render.assert_called_with("text", encoding=cgg.encoding, strip_whitespace=False) @@ -96,9 +103,8 @@ if can_skip or HAS_GENSHI: cgg._handle_genshi_exception.side_effect = ValueError self.assertRaises(ValueError, cgg.get_data, entry, metadata) - cgg.template.generate.assert_called_with(name=entry.get("name"), - metadata=metadata, - path=cgg.name) + cgg.template.generate.assert_called_with(**template_vars) + Bcfg2.Server.Plugins.Cfg.CfgGenshiGenerator.SETUP.__getitem__.assert_called_with("repo") fltr.filter.assert_called_with(removecomment) stream.render.assert_called_with("text", encoding=cgg.encoding, strip_whitespace=False) -- cgit v1.2.3-1-g7c22