Skip to content

Commit

Permalink
Further refactor loop as every()
Browse files Browse the repository at this point in the history
  • Loading branch information
Trevor Burnham committed Aug 19, 2019
1 parent f117aef commit cdff101
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 16 deletions.
10 changes: 3 additions & 7 deletions src/rules/no-namespace.js
Expand Up @@ -91,18 +91,14 @@ module.exports = {
* @returns {boolean} `true` if the namespace variable is more than just a glorified constant
*/
function usesNamespaceAsObject(namespaceIdentifiers) {
return namespaceIdentifiers.some((identifier) => {
return !namespaceIdentifiers.every((identifier) => {
const parent = identifier.parent

// `namespace.x` or `namespace['x']`
if (
return (
parent && parent.type === 'MemberExpression' &&
(parent.property.type === 'Identifier' || parent.property.type === 'Literal')
) {
return false
}

return true
)
})
}

Expand Down
18 changes: 9 additions & 9 deletions tests/src/rules/no-namespace.js
Expand Up @@ -74,15 +74,15 @@ const FIX_TESTS = semver.satisfies(eslintPkg.version, '>5.0.0') ? [

ruleTester.run('no-namespace', require('rules/no-namespace'), {
valid: [
{ code: "import { a, b } from 'foo';", parserOptions: { ecmaVersion: 2015, sourceType: 'module' } },
{ code: "import { a, b } from './foo';", parserOptions: { ecmaVersion: 2015, sourceType: 'module' } },
{ code: "import bar from 'bar';", parserOptions: { ecmaVersion: 2015, sourceType: 'module' } },
{ code: "import bar from './bar';", parserOptions: { ecmaVersion: 2015, sourceType: 'module' } },
{ code: 'import { a, b } from \'foo\';', parserOptions: { ecmaVersion: 2015, sourceType: 'module' } },
{ code: 'import { a, b } from \'./foo\';', parserOptions: { ecmaVersion: 2015, sourceType: 'module' } },
{ code: 'import bar from \'bar\';', parserOptions: { ecmaVersion: 2015, sourceType: 'module' } },
{ code: 'import bar from \'./bar\';', parserOptions: { ecmaVersion: 2015, sourceType: 'module' } },
],

invalid: [
test({
code: "import * as foo from 'foo';",
code: 'import * as foo from \'foo\';',
output: 'import * as foo from \'foo\';',
errors: [ {
line: 1,
Expand All @@ -91,17 +91,17 @@ ruleTester.run('no-namespace', require('rules/no-namespace'), {
} ],
}),
test({
code: "import defaultExport, * as foo from 'foo';",
output: "import defaultExport, * as foo from 'foo';",
code: 'import defaultExport, * as foo from \'foo\';',
output: 'import defaultExport, * as foo from \'foo\';',
errors: [ {
line: 1,
column: 23,
message: ERROR_MESSAGE,
} ],
}),
test({
code: "import * as foo from './foo';",
output: "import * as foo from './foo';",
code: 'import * as foo from \'./foo\';',
output: 'import * as foo from \'./foo\';',
errors: [ {
line: 1,
column: 8,
Expand Down

0 comments on commit cdff101

Please sign in to comment.