Fix: allow options to be optional when monkey patching escope.analyze (fixes babel/babel-eslint#470). (babel/babel-eslint#484)

This commit is contained in:
Mark Banner 2017-06-08 17:23:08 +01:00
parent 45a9f64174
commit 36a630e023
2 changed files with 12 additions and 0 deletions

View File

@ -62,6 +62,7 @@ function monkeypatch(modules) {
var analyze = escope.analyze;
escope.analyze = function (ast, opts) {
opts = opts || {};
opts.ecmaVersion = eslintOptions.ecmaVersion;
opts.sourceType = eslintOptions.sourceType;
if (eslintOptions.globalReturn !== undefined) {

View File

@ -1,6 +1,7 @@
var assert = require("assert");
var babelEslint = require("..");
var espree = require("espree");
var escope = require("escope");
var util = require("util");
var unpad = require("dedent");
@ -85,6 +86,16 @@ function parseAndAssertSame(code) {
}
describe("babylon-to-esprima", () => {
describe("compatibility", () => {
it("should allow ast.analyze to be called without options", function() {
var esAST = babelEslint.parse("`test`");
assert.doesNotThrow(() => {
escope.analyze(esAST);
}, TypeError, "Should allow no options argument.");
});
});
describe("templates", () => {
it("empty template string", () => {
parseAndAssertSame("``");