diff --git a/lib/rules/no-unused-expressions.js b/lib/rules/no-unused-expressions.js index 26a25b7584b..8c049f556ff 100644 --- a/lib/rules/no-unused-expressions.js +++ b/lib/rules/no-unused-expressions.js @@ -124,7 +124,7 @@ module.exports = { return true; } - return /^(?:Assignment|Call|New|Update|Yield|Await)Expression$/u.test(node.type) || + return /^(?:Assignment|Call|New|Update|Yield|Await|Import)Expression$/u.test(node.type) || (node.type === "UnaryExpression" && ["delete", "void"].indexOf(node.operator) >= 0); } diff --git a/tests/lib/rules/no-unused-expressions.js b/tests/lib/rules/no-unused-expressions.js index 34051daa7b5..8ef2028c662 100644 --- a/tests/lib/rules/no-unused-expressions.js +++ b/tests/lib/rules/no-unused-expressions.js @@ -70,6 +70,10 @@ ruleTester.run("no-unused-expressions", rule, { code: "shouldNotBeAffectedByAllowTemplateTagsOption()", options: [{ allowTaggedTemplates: true }], parserOptions: { ecmaVersion: 6 } + }, + { + code: "import(\"foo\")", + parserOptions: { ecmaVersion: 11 } } ], invalid: [