25 lines
924 B
JavaScript

var fs = require('fs');
var path = require('path');
var markoVersion = require('../../../../package.json').version;
function _appendMarkoVersionComment(str) {
return '// Compiled using marko@' + markoVersion + ' - DO NOT EDIT\n' + str;
}
exports.check = function(marko, markoCompiler, expect, helpers, done) {
var compiler = require('marko/compiler');
var templatePath = path.join(__dirname, 'template.marko');
var expectedPath = path.join(__dirname, 'expected.js');
var templateSrc = fs.readFileSync(templatePath, { encoding: 'utf8' });
var compiledTemplate = compiler.compileForBrowser(templateSrc, templatePath);
var expected = fs.readFileSync(expectedPath, { encoding: 'utf8' });
compiledTemplate.code = _appendMarkoVersionComment(compiledTemplate.code);
expected = _appendMarkoVersionComment(expected);
expect(compiledTemplate.code).to.deep.equal(expected);
done();
};