var expect = require('expect.js'); var template = require('../../lib/util/template'); var fs = require('fs'); describe('template: util template methods for templates in lib/templates', function () { describe('.render() - Renders a handlebars template', function () { var testTemplateName = 'test-template.tpl'; var testTemplatePath = __dirname + '/../../lib/templates/' + testTemplateName; beforeEach(function () { fs.writeFileSync(testTemplatePath, '{{foo}}'); console.log(); }); it('.render() returns a compiled test-template template', function () { var compiledStr = template.render( testTemplateName, { foo: 'foo value' } ); expect(compiledStr).to.be.equal( 'foo value' ); }); it('.render() throws when a non existent template is provided', function () { expect(function () { template.render( 'test-template.not-present.tpl', { foo: 'foo value' } ); }).to.throwException(); }); afterEach(function () { fs.unlinkSync(testTemplatePath); }); }); describe('.exists() - Checks existence of a template', function () { var testTemplateName = 'test-template.tpl'; var testTemplatePath = __dirname + '/../../lib/templates/' + testTemplateName; beforeEach(function () { fs.writeFileSync(testTemplatePath, '{{foo}}'); }); it('.exists() returns true for an existing template', function () { var templateExists = template.exists(testTemplateName); expect(templateExists).to.be.ok(); }); it('.exists() returns false for a non existing template', function () { var templateExists = template.exists('test-template.not-present.tpl'); expect(templateExists).to.not.be.ok(); }); afterEach(function () { fs.unlinkSync(testTemplatePath); }); }); });