marko/test/codegen-test.js
Patrick Steele-Idem 069b3e5ba9 Initial commit for marko v3 with htmljs-parser
Work-in-progress. Lots of failing tests.
2015-11-24 14:30:32 -07:00

33 lines
999 B
JavaScript

'use strict';
var chai = require('chai');
chai.config.includeStack = true;
var expect = require('chai').expect;
var path = require('path');
var compiler = require('../compiler');
var builder = compiler.createBuilder();
var autotest = require('./autotest');
describe('compiler/codegen', function() {
var autoTestDir = path.join(__dirname, 'fixtures/codegen/autotest');
autotest.scanDir(autoTestDir, function run(dir) {
var main = require(path.join(dir, 'index.js'));
var generateCodeFunc = main;
var ast = generateCodeFunc(builder);
return compiler.generateCode(ast);
});
it('should not allow a return outside a function', function() {
let builder = compiler.createBuilder();
expect(function() {
var rootNode = builder.program([
builder.returnStatement('foo')
]);
compiler.generateCode(rootNode);
}).to.throw('"return" not allowed outside a function body');
});
});