blob: d70f4af52f7609af7755114786c770365083198a [file] [log] [blame]
"use strict";
var helpers = require("../lib/helpers.js");
var runner = helpers.createRunner(__dirname, __filename);
exports.testMaxErr = function (test) {
var lines = [];
for (var i = 5; i <= 55; i++) {
lines.push(i);
}
runner(test)
.addErrors(lines, "W001")
.testFile("fifty.js");
test.done();
};
exports.testEsprimaErrors = function (test) {
runner(test)
.addError(3, "E002")
.testFile("esprima.js", {}, { greatPower: false });
test.done();
};
exports.testTrailingComma = function (test) {
runner(test)
.addErrors([2, 4, 9], "E001")
.testFile("trailing.js");
test.done();
};
exports.testDunderIterator = function (test) {
runner(test)
.addError(19, "E004")
.testFile("iterator.js");
test.done();
};
exports.testDunderProto = function (test) {
var globals = {
Error: false
};
runner(test)
.addErrors([7, 8, 10, 29, 33], "E005")
.testFile("proto.js", {}, globals);
test.done();
};
exports.testMissingSemicolon = function (test) {
runner(test)
.addErrors([6, 29, 31, 44, 45], "E006")
.testFile("asi.js", {}, { console: false });
test.done();
};
exports.testDebugger = function (test) {
runner(test)
.addError(5, "E007")
.testFile("debugger.js");
test.done();
};
exports.testBitwiseOperators = function (test) {
runner(test)
.addErrors([5, 6, 7, 8, 9, 10, 11], "W001")
.testFile("bitwise.js");
test.done();
};
exports.testUnsafeComparison = function (test) {
var lines = [2, 5, 8, 11, 14, 17, 28, 31, 34, 37, 40, 43];
runner(test)
.addErrors(lines, "W002")
.testFile("comparison.js");
test.done();
};
exports.testShadow = function (test) {
runner(test)
.addErrors([3, 4, 8, 12, 16, 17], "W003")
.testFile("shadow.js", {}, { three: false });
test.done();
};
exports.testUndef = function (test) {
runner(test)
.addErrors([4, 7, 8, 18, 19, 22, 23, 27], "W004")
.addError(41, "E009")
.testFile("undef.js");
test.done();
};
exports.testArguments = function (test) {
runner(test)
.addErrors([5, 17], "W006")
.addErrors([6, 18], "W005")
.addErrors([11, 12, 13, 14], "W007")
.addErrors([26, 27], "E008")
.testFile("arguments.js");
test.done();
};
exports.testExpressionsAsTests = function (test) {
runner(test)
.addErrors([8, 9, 10, 11], "W008")
.testFile("expr_in_test.js");
test.done();
};
exports.testNative = function (test) {
runner(test)
.addErrors([2, 5, 8], "W012")
.testFile("native.js");
test.done();
};