return output.encode('utf-8')
-def main(data, template, **kwargs):
- data = data
- template = template
-
+def main(template, data=None, **kwargs):
with open(template, 'r') as template_file:
- with open(data, 'r') as data_file:
- args = {
- 'template': template_file,
- 'data': json.load(data_file)
- }
-
- args.update(kwargs)
- return render(**args)
+ if data is not None:
+ data_file = open(data, 'r')
+ data = json.load(data_file)
+ data_file.close()
+ else:
+ data = {}
+
+ args = {
+ 'template': template_file,
+ 'data': data
+ }
+
+ args.update(kwargs)
+ return render(**args)
def cli_main():
self.assertEqual(result, expected)
def test_main(self):
- result = chevron.main('tests/data.json', 'tests/test.mustache',
+ result = chevron.main('tests/test.mustache', 'tests/data.json',
partials_path='tests')
with open('tests/test.rendered', 'r') as f: