diff --git a/src/rules/default.js b/src/rules/default.js index 7e07800dae..a524dcdc72 100644 --- a/src/rules/default.js +++ b/src/rules/default.js @@ -13,14 +13,9 @@ module.exports = { function checkDefault(specifierType, node) { - // poor man's Array.find - let defaultSpecifier - node.specifiers.some((n) => { - if (n.type === specifierType) { - defaultSpecifier = n - return true - } - }) + const defaultSpecifier = node.specifiers.find( + specifier => specifier.type === specifierType + ) if (!defaultSpecifier) return var imports = Exports.get(node.source.value, context) @@ -29,7 +24,10 @@ module.exports = { if (imports.errors.length) { imports.reportErrors(context, node) } else if (imports.get('default') === undefined) { - context.report(defaultSpecifier, 'No default export found in module.') + context.report({ + node: defaultSpecifier, + message: `No default export found in imported module "${node.source.value}".`, + }) } } diff --git a/tests/src/rules/default.js b/tests/src/rules/default.js index c02b364489..c21f1fd8c2 100644 --- a/tests/src/rules/default.js +++ b/tests/src/rules/default.js @@ -102,7 +102,7 @@ ruleTester.run('default', rule, { test({ code: 'import baz from "./named-exports";', - errors: [{ message: 'No default export found in module.' + errors: [{ message: 'No default export found in imported module "./named-exports".' , type: 'ImportDefaultSpecifier'}]}), test({ @@ -114,29 +114,29 @@ ruleTester.run('default', rule, { test({ code: 'export baz from "./named-exports"', parser: require.resolve('babel-eslint'), - errors: ['No default export found in module.'], + errors: ['No default export found in imported module "./named-exports".'], }), test({ code: 'export baz, { bar } from "./named-exports"', parser: require.resolve('babel-eslint'), - errors: ['No default export found in module.'], + errors: ['No default export found in imported module "./named-exports".'], }), test({ code: 'export baz, * as names from "./named-exports"', parser: require.resolve('babel-eslint'), - errors: ['No default export found in module.'], + errors: ['No default export found in imported module "./named-exports".'], }), // exports default from a module with no default test({ code: 'import twofer from "./broken-trampoline"', parser: require.resolve('babel-eslint'), - errors: ['No default export found in module.'], + errors: ['No default export found in imported module "./broken-trampoline".'], }), // #328: * exports do not include default test({ code: 'import barDefault from "./re-export"', - errors: [`No default export found in module.`], + errors: ['No default export found in imported module "./re-export".'], }), ], }) @@ -152,7 +152,7 @@ if (!CASE_SENSITIVE_FS) { invalid: [ test({ code: 'import bar from "./Named-Exports"', - errors: ['No default export found in module.'], + errors: ['No default export found in imported module "./Named-Exports".'], }), ], })