fix parser tests

update exception messages
This commit is contained in:
alexlamsl
2017-02-28 03:58:01 +08:00
parent a0eaff750d
commit a942dc07c4
12 changed files with 30 additions and 31 deletions

View File

@@ -15,7 +15,7 @@ describe("Arrow functions", function() {
}
var error = function(e) {
return e instanceof uglify.JS_Parse_Error &&
e.message === "SyntaxError: Unexpected token: expand (...)";
e.message === "Unexpected token: expand (...)";
}
for (var i = 0; i < tests.length; i++) {
@@ -33,7 +33,7 @@ describe("Arrow functions", function() {
}
var error = function(e) {
return e instanceof uglify.JS_Parse_Error &&
e.message === "SyntaxError: Unexpected token: punc (,)";
e.message === "Unexpected token: punc (,)";
}
for (var i = 0; i < tests.length; i++) {
@@ -54,7 +54,7 @@ describe("Arrow functions", function() {
}
var error = function(e) {
return e instanceof uglify.JS_Parse_Error &&
e.message === "SyntaxError: Unexpected newline before arrow (=>)";
e.message === "Unexpected newline before arrow (=>)";
}
for (var i = 0; i < tests.length; i++) {
@@ -73,7 +73,7 @@ describe("Arrow functions", function() {
}
var error = function(e) {
return e instanceof uglify.JS_Parse_Error &&
e.message === "SyntaxError: Unexpected token: arrow (=>)";
e.message === "Unexpected token: arrow (=>)";
}
for (var i = 0; i < tests.length; i++) {

View File

@@ -16,7 +16,7 @@ describe("Class", function() {
}
var error = function(e) {
return e instanceof uglify.JS_Parse_Error &&
e.message.substr(0, 31) === "SyntaxError: Unexpected token: ";
/^Unexpected token: /.test(e.message);
}
for (var i = 0; i < tests.length; i++) {

View File

@@ -4,8 +4,7 @@ var uglify = require("../../");
describe("EOF", function() {
it("Should test code for at least throwing syntax error when incomplete", function() {
var error = function(e) {
return e instanceof uglify.JS_Parse_Error &&
/^SyntaxError: /.test(e.message);
return e instanceof uglify.JS_Parse_Error;
}
var parse = function(test) {
return function() {

View File

@@ -16,7 +16,7 @@ describe("Expression", function() {
var fail = function(e) {
return e instanceof uglify.JS_Parse_Error &&
/^SyntaxError: Unexpected token: operator \((?:[!+~-]|void|typeof|delete)\)/.test(e.message);
/^Unexpected token: operator \((?:[!+~-]|void|typeof|delete)\)/.test(e.message);
}
var exec = function(test) {

View File

@@ -177,7 +177,7 @@ describe("Function", function() {
}
var error = function(e) {
return e instanceof uglify.JS_Parse_Error &&
e.message.substr(0, 31) === "SyntaxError: Unexpected token: ";
/^Unexpected token: /.test(e.message);
}
for (var i = 0; i < tests.length; i++) {
@@ -196,7 +196,7 @@ describe("Function", function() {
}
var error = function(e) {
return e instanceof uglify.JS_Parse_Error &&
e.message === "SyntaxError: Invalid function parameter";
e.message === "Invalid function parameter";
}
for (var i = 0; i < tests.length; i++) {
assert.throws(test(tests[i]), error);
@@ -243,7 +243,7 @@ describe("Function", function() {
}
var error = function (e) {
return e instanceof uglify.JS_Parse_Error &&
/^SyntaxError: Parameter [a-zA-Z]+ was used already$/.test(e.message);
/^Parameter [a-zA-Z]+ was used already$/.test(e.message);
}
for (var i = 0; i < tests.length; i++) {
assert.throws(test(tests[i]), error, tests[i]);

View File

@@ -71,7 +71,7 @@ describe("Getters and setters", function() {
var fail = function(data) {
return function (e) {
return e instanceof UglifyJS.JS_Parse_Error &&
e.message === "Invalid getter/setter name: " + data.operator;
/^Unexpected token: /.test(e.message);
};
};

View File

@@ -248,18 +248,18 @@ describe("Left-hand side expressions", function () {
}
// Spreads are not allowed in destructuring array if it's not the last element
expect("[...a, ...b] = [1, 2, 3, 4]", "SyntaxError: Spread must the be last element in destructuring array");
expect("[...a, ...b] = [1, 2, 3, 4]", "Spread must the be last element in destructuring array");
// Multiple spreads are not allowed in destructuring array
expect("[...a, ...b] = [1, 2, 3, 4]", "SyntaxError: Spread must the be last element in destructuring array");
expect("[...a, ...b] = [1, 2, 3, 4]", "Spread must the be last element in destructuring array");
// Spread in obvious object pattern
expect("({...a} = foo)", "SyntaxError: Unexpected token: expand (...)");
expect("({...a} = foo)", "Unexpected token: expand (...)");
// Spread in block should not be allowed
expect("{...a} = foo", "SyntaxError: Unexpected token: expand (...)");
expect("{...a} = foo", "Unexpected token: expand (...)");
// Not in standard yet
expect("let foo = {bar: 42}, bar; bar = {...foo}", "SyntaxError: Unexpected token: expand (...)");
expect("let foo = {bar: 42}, bar; bar = {...foo}", "Unexpected token: expand (...)");
});
});

View File

@@ -89,7 +89,7 @@ describe("New", function() {
it("Should check target in new.target", function() {
assert.throws(function() {uglify.parse("new.blah")}, function(e) {
return e instanceof uglify.JS_Parse_Error
&& e.message === "SyntaxError: Unexpected token name «blah», expected name «target»";
&& e.message === "Unexpected token name «blah», expected name «target»";
});
});
});

View File

@@ -107,9 +107,9 @@ describe("Object", function() {
var fail = function(data) {
return function (e) {
return e instanceof Uglify.JS_Parse_Error && (
e.message === "SyntaxError: Unexpected token: operator (" + data.operator + ")" ||
(e.message === "SyntaxError: Unterminated regular expression" && data.operator[0] === "/") ||
(e.message === "SyntaxError: Unexpected token: punc (()" && data.operator === "*")
e.message === "Unexpected token: operator (" + data.operator + ")" ||
(e.message === "Unterminated regular expression" && data.operator[0] === "/") ||
(e.message === "Unexpected token: punc (()" && data.operator === "*")
);
};
};

View File

@@ -23,7 +23,7 @@ describe("Template string", function() {
var fail = function(e) {
return e instanceof uglify.JS_Parse_Error
&& /^SyntaxError: Unexpected token: /.test(e.message);
&& /^Unexpected token: /.test(e.message);
};
for (var i = 0; i < tests.length; i++) {

View File

@@ -17,7 +17,7 @@ describe("Unicode", function() {
var fail = function(e) {
return e instanceof uglify.JS_Parse_Error
&& e.message === "SyntaxError: Unicode reference out of bounce";
&& e.message === "Unicode reference out of bounce";
}
for (var i = 0; i < tests.length; i++) {
@@ -40,7 +40,7 @@ describe("Unicode", function() {
var fail = function(e) {
return e instanceof uglify.JS_Parse_Error
&& e.message === "SyntaxError: Invalid hex-character pattern in string";
&& e.message === "Invalid hex-character pattern in string";
}
for (var i = 0; i < tests.length; i++) {
@@ -67,7 +67,7 @@ describe("Unicode", function() {
var fail = function(e) {
return e instanceof uglify.JS_Parse_Error
&& e.message === "SyntaxError: First identifier char is an invalid identifier char";
&& e.message === "First identifier char is an invalid identifier char";
}
for (var i = 0; i < tests.length; i++) {
@@ -90,7 +90,7 @@ describe("Unicode", function() {
var fail = function(e) {
return e instanceof uglify.JS_Parse_Error
&& e.message === "SyntaxError: Invalid escaped identifier char";
&& e.message === "Invalid escaped identifier char";
}
for (var i = 0; i < tests.length; i++) {
@@ -115,7 +115,7 @@ describe("Unicode", function() {
var fail = function(e) {
return e instanceof uglify.JS_Parse_Error
&& e.message === "SyntaxError: Escaped characters are not allowed in keywords";
&& e.message === "Escaped characters are not allowed in keywords";
}
for (var i = 0; i < tests.length; i++) {

View File

@@ -15,7 +15,7 @@ describe("Yield", function() {
}
var expect = function(e) {
return e instanceof UglifyJS.JS_Parse_Error &&
e.message === "SyntaxError: Yield cannot be used as label inside generators";
e.message === "Yield cannot be used as label inside generators";
}
assert.throws(test, expect);
});
@@ -27,7 +27,7 @@ describe("Yield", function() {
}
var expect = function(e) {
return e instanceof UglifyJS.JS_Parse_Error &&
e.message === "SyntaxError: Unexpected token: punc (;)";
e.message === "Unexpected token: punc (;)";
}
assert.throws(test, expect);
});
@@ -39,7 +39,7 @@ describe("Yield", function() {
}
var expect = function(e) {
return e instanceof UglifyJS.JS_Parse_Error &&
e.message === "SyntaxError: Unexpected token: operator (*)";
e.message === "Unexpected token: operator (*)";
}
assert.throws(test, expect);
});
@@ -90,7 +90,7 @@ describe("Yield", function() {
var fail = function(e) {
return e instanceof UglifyJS.JS_Parse_Error &&
/SyntaxError: Unexpected yield identifier (?:as parameter )?inside strict mode/.test(e.message);
/^Unexpected yield identifier (?:as parameter )?inside strict mode/.test(e.message);
}
var test = function(input) {