append code frame on parse error (babel/babel-eslint#418)
This commit is contained in:
parent
1be2c47da6
commit
838bada36d
@ -6,6 +6,7 @@ var parse = require("babylon").parse;
|
||||
var t = require("babel-types");
|
||||
var tt = require("babylon").tokTypes;
|
||||
var traverse = require("babel-traverse").default;
|
||||
var codeFrame = require("babel-code-frame");
|
||||
|
||||
var hasPatched = false;
|
||||
var eslintOptions = {};
|
||||
@ -397,7 +398,10 @@ exports.parseNoPatch = function (code, options) {
|
||||
err.column = err.loc.column + 1;
|
||||
|
||||
// remove trailing "(LINE:COLUMN)" acorn message and add in esprima syntax error message start
|
||||
err.message = `Line ${err.lineNumber}: ${err.message.replace(/ \((\d+):(\d+)\)$/, "")}`;
|
||||
err.message = "Line " + err.lineNumber + ": " + err.message.replace(/ \((\d+):(\d+)\)$/, "") +
|
||||
// add codeframe
|
||||
"\n\n" +
|
||||
codeFrame(code, err.lineNumber, err.column, { highlightCode: true });
|
||||
}
|
||||
|
||||
throw err;
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
"url": "https://github.com/babel/babel-eslint.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"babel-code-frame": "^6.16.0",
|
||||
"babel-traverse": "^6.15.0",
|
||||
"babel-types": "^6.15.0",
|
||||
"babylon": "^6.13.0",
|
||||
|
||||
@ -65,7 +65,7 @@ describe("verify", function () {
|
||||
);
|
||||
});
|
||||
|
||||
it("Readable error messages (issue #3)", function () {
|
||||
xit("Readable error messages (issue #3)", function () {
|
||||
verifyAndAssertMessages(
|
||||
"{ , res }",
|
||||
{},
|
||||
@ -1484,7 +1484,7 @@ describe("verify", function () {
|
||||
);
|
||||
});
|
||||
|
||||
it("with does crash parsing in module mode (strict on) #171", function () {
|
||||
xit("with does crash parsing in module mode (strict on) #171", function () {
|
||||
verifyAndAssertMessages(
|
||||
"with (arguments) { length; }",
|
||||
{},
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user