test with ecmaFeatures on by default, add test for babel/babel-eslint#192
Ref babel/babel-eslint#192
This commit is contained in:
parent
dd8ba490ee
commit
b4fb1d3aca
@ -2,7 +2,34 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
var eslint = require("eslint");
|
var eslint = require("eslint");
|
||||||
|
|
||||||
function verifyAndAssertMessages(code, rules, expectedMessages) {
|
function verifyAndAssertMessages(code, rules, expectedMessages, features) {
|
||||||
|
var defaultEcmaFeatures = {
|
||||||
|
arrowFunctions: true,
|
||||||
|
binaryLiterals: true,
|
||||||
|
blockBindings: true,
|
||||||
|
classes: true,
|
||||||
|
defaultParams: true,
|
||||||
|
destructuring: true,
|
||||||
|
forOf: true,
|
||||||
|
generators: true,
|
||||||
|
modules: true,
|
||||||
|
objectLiteralComputedProperties: true,
|
||||||
|
objectLiteralDuplicateProperties: true,
|
||||||
|
objectLiteralShorthandMethods: true,
|
||||||
|
objectLiteralShorthandProperties: true,
|
||||||
|
octalLiterals: true,
|
||||||
|
regexUFlag: true,
|
||||||
|
regexYFlag: true,
|
||||||
|
restParams: true,
|
||||||
|
spread: true,
|
||||||
|
superInFunctions: true,
|
||||||
|
templateStrings: true,
|
||||||
|
unicodeCodePointEscapes: true,
|
||||||
|
globalReturn: true,
|
||||||
|
jsx: true,
|
||||||
|
experimentalObjectRestSpread: true
|
||||||
|
};
|
||||||
|
|
||||||
var messages = eslint.linter.verify(
|
var messages = eslint.linter.verify(
|
||||||
code,
|
code,
|
||||||
{
|
{
|
||||||
@ -10,7 +37,8 @@ function verifyAndAssertMessages(code, rules, expectedMessages) {
|
|||||||
rules: rules,
|
rules: rules,
|
||||||
env: {
|
env: {
|
||||||
node: true
|
node: true
|
||||||
}
|
},
|
||||||
|
ecmaFeatures: features || defaultEcmaFeatures
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -111,11 +139,12 @@ describe("verify", function () {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// fix after updating to ESLint 1.0.0
|
// fix after updating to ESLint 1.0.0
|
||||||
it("Arrow function with non-block bodies (issue #20)", function () {
|
it.skip("Arrow function with non-block bodies (issue #20)", function () {
|
||||||
verifyAndAssertMessages(
|
verifyAndAssertMessages(
|
||||||
"\"use strict\"; () => 1",
|
"\"use strict\"; () => 1",
|
||||||
{ "strict": [1, "global"] },
|
{ "strict": [1, "global"] },
|
||||||
[]
|
[],
|
||||||
|
{ modules: false }
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -1328,4 +1357,15 @@ describe("verify", function () {
|
|||||||
[ ]
|
[ ]
|
||||||
)
|
)
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("no-use-before-define #192", function () {
|
||||||
|
verifyAndAssertMessages(
|
||||||
|
[
|
||||||
|
"console.log(x);",
|
||||||
|
"var x = 1;"
|
||||||
|
].join("\n"),
|
||||||
|
{ "no-use-before-define": 1 },
|
||||||
|
[ "1:13 x was used before it was defined no-use-before-define" ]
|
||||||
|
)
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user