From 8ec53a3579fcb59cdffea0c60fbb755d056f4c8a Mon Sep 17 00:00:00 2001 From: Brad Zacher Date: Mon, 30 Mar 2020 17:04:10 -0700 Subject: [PATCH] fix(eslint-plugin): [no-unsafe-call] fix incorrect selector (#1826) --- packages/eslint-plugin/src/rules/no-unsafe-call.ts | 2 +- packages/eslint-plugin/tests/rules/no-unsafe-call.test.ts | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/eslint-plugin/src/rules/no-unsafe-call.ts b/packages/eslint-plugin/src/rules/no-unsafe-call.ts index 13cabc87d92..66f66448c28 100644 --- a/packages/eslint-plugin/src/rules/no-unsafe-call.ts +++ b/packages/eslint-plugin/src/rules/no-unsafe-call.ts @@ -41,7 +41,7 @@ export default util.createRule<[], MessageIds>({ } return { - ':matches(CallExpression, OptionalCallExpression) > :not(Import)'( + ':matches(CallExpression, OptionalCallExpression) > :not(Import).callee'( node: Exclude, ): void { checkCall(node, node, 'unsafeCall'); diff --git a/packages/eslint-plugin/tests/rules/no-unsafe-call.test.ts b/packages/eslint-plugin/tests/rules/no-unsafe-call.test.ts index a51273c9b9c..bc7b6c7d086 100644 --- a/packages/eslint-plugin/tests/rules/no-unsafe-call.test.ts +++ b/packages/eslint-plugin/tests/rules/no-unsafe-call.test.ts @@ -21,6 +21,11 @@ ruleTester.run('no-unsafe-call', rule, { 'new Map()', 'String.raw`foo`', 'const x = import("./foo");', + // https://github.com/typescript-eslint/typescript-eslint/issues/1825 + ` + let foo: any = 23; + String(foo); // ERROR: Unsafe call of an any typed value + `, ], invalid: [ ...batchedSingleLineTests({