fix tests

This commit is contained in:
nightwing 2012-09-02 17:07:55 +04:00
commit 8edefd21a7
2 changed files with 20 additions and 15 deletions

View file

@ -102,7 +102,6 @@ oop.inherits(JavaScriptWorker, Mirror);
return;
}
var errors = [];
var ranges = [];
// jshint reports many false errors
// report them as error only if code is actually invalid
@ -111,11 +110,6 @@ oop.inherits(JavaScriptWorker, Mirror);
eval("throw 0;" + value);
} catch(e) {
if (e != 0) {
errors.push({
row: e.lineNumber,
type: "error",
text: e.message
});
maxErrorLevel = "error";
}
}
@ -133,7 +127,13 @@ oop.inherits(JavaScriptWorker, Mirror);
var type = "warning";
if (raw == "Missing semicolon.") {
type = "info";
var str = error.evidence.substr(error.character);
str = str.charAt(str.search(/\S/));
if (maxErrorLevel == "error" && str && /[\w\d{([]/.test(str)) {
error.reason = 'Missing ";" before statement';
type = "error";
} else
type = "info";
}
else if (disabledWarningsRe.test(raw)) {
continue;

View file

@ -58,11 +58,11 @@ module.exports = {
worker.setValue("Juhu Kinners");
worker.deferredUpdate.call();
var error = this.sender.events[0][1];
assert.equal(error.text, "missing ; before statement");
var error = this.sender.events[0][1][0];
assert.equal(error.text, 'Missing ";" before statement');
assert.equal(error.type, "error");
assert.equal(error.row, 0);
assert.equal(error.column, null);
assert.equal(error.column, 4);
},
"test invalid multi line string": function() {
@ -70,18 +70,23 @@ module.exports = {
worker.setValue('"a\n\\nn"');
worker.deferredUpdate.call();
var error = this.sender.events[0][1];
assert.equal(error.text, "Unterminated string literal");
var error = this.sender.events[0][1][0];
assert.equal(error.text, "Unclosed string.");
assert.equal(error.type, "error");
assert.equal(error.row, 0);
assert.equal(error.column, null);
assert.equal(error.column, 0);
},
"test check for narcissus bug": function() {
"test another invalid string": function() {
var worker = new JavaScriptWorker(this.sender);
worker.setValue("if('");
worker.deferredUpdate.call();
assert.equal(this.sender.events[0][1].type, "error");
var error = this.sender.events[0][1][0];
assert.equal(error.text, "Unclosed string.");
assert.equal(error.type, "error");
assert.equal(error.row, 0);
assert.equal(error.column, 3);
}
};