better traceur test api
This commit is contained in:
parent
6420954c53
commit
a3b30bae7a
@ -47,7 +47,7 @@ exports.get = function (entryName) {
|
||||
|
||||
function push(taskName, taskDir) {
|
||||
// tracuer error tests
|
||||
if (taskName.indexOf("Error_") === 0) return;
|
||||
if (taskName.indexOf("Error_") >= 0) return;
|
||||
|
||||
var actualLocAlias = suiteName + "/" + taskName + "/actual.js";
|
||||
var expectLocAlias = suiteName + "/" + taskName + "/expected.js";
|
||||
@ -97,12 +97,12 @@ exports.get = function (entryName) {
|
||||
// traceur checks
|
||||
|
||||
var shouldSkip = function (code) {
|
||||
return code.indexOf("// Error:") === 0 || code.indexOf("// Skip.") === 0;
|
||||
return code.indexOf("// Error:") >= 0 || code.indexOf("// Skip.") >= 0;
|
||||
};
|
||||
|
||||
if (shouldSkip(test.actual.code) || shouldSkip(test.exec.code)) {
|
||||
return;
|
||||
} else if (test.exec.code.indexOf("// Async.")) {
|
||||
} else if (test.exec.code.indexOf("// Async.") >= 0) {
|
||||
//test.options.asyncExec = true;
|
||||
}
|
||||
|
||||
|
||||
@ -40,16 +40,18 @@ var run = function (task, done) {
|
||||
execCode = result.code;
|
||||
|
||||
try {
|
||||
var requireRelative;
|
||||
if (opts.emulateNodeModule) {
|
||||
var mod = new Module(exec.loc);
|
||||
requireRelative = function (loc) {
|
||||
return mod.require(loc);
|
||||
};
|
||||
}
|
||||
var fakeRequire = function (loc) {
|
||||
if (loc === "../../../src/runtime/polyfills/Number.js") {
|
||||
return Number;
|
||||
} else if (loc === "../../../src/runtime/polyfills/Math.js") {
|
||||
return Math;
|
||||
} else {
|
||||
return require(path.resolve(exec.loc, "..", loc));
|
||||
}
|
||||
};
|
||||
|
||||
var fn = new Function("require", "done", execCode);
|
||||
fn(requireRelative, chai.assert, done);
|
||||
fn.call(global, fakeRequire, chai.assert, done);
|
||||
} catch (err) {
|
||||
err.message = exec.loc + ": " + err.message;
|
||||
err.message += util.codeFrame(execCode);
|
||||
@ -83,6 +85,10 @@ var run = function (task, done) {
|
||||
};
|
||||
|
||||
module.exports = function (name, opts) {
|
||||
if (opts && opts.requireHook) {
|
||||
require("6to5/register")(opts);
|
||||
}
|
||||
|
||||
_.each(helper.get(name), function (testSuite) {
|
||||
suite(name + "/" + testSuite.title, function () {
|
||||
_.each(testSuite.tests, function (task) {
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
require("./_transformation-helper")("traceur", {
|
||||
blacklist: ["useStrict"],
|
||||
emulateNodeModule: true,
|
||||
requireHook: true,
|
||||
experimental: true
|
||||
});
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user