Skip to content

Commit

Permalink
Merge pull request #929 from bmish/fix-spread-crash-avoid-using-needs…
Browse files Browse the repository at this point in the history
…-in-controllers

Fix spread syntax crash in `avoid-using-needs-in-controllers` rule
  • Loading branch information
bmish committed Sep 7, 2020
2 parents d74517b + f31f5c1 commit f0fdaa8
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 1 deletion.
6 changes: 5 additions & 1 deletion lib/rules/avoid-using-needs-in-controllers.js
Expand Up @@ -38,7 +38,11 @@ module.exports = {
const properties = ember.getModuleProperties(node);

properties.forEach((property) => {
if (property.key.name === 'needs') {
if (
property.type === 'Property' &&
property.key.type === 'Identifier' &&
property.key.name === 'needs'
) {
report(property);
}
});
Expand Down
2 changes: 2 additions & 0 deletions tests/lib/rules/avoid-using-needs-in-controllers.js
Expand Up @@ -10,6 +10,7 @@ const RuleTester = require('eslint').RuleTester;
// ------------------------------------------------------------------------------

const eslintTester = new RuleTester({
parser: require.resolve('babel-eslint'),
parserOptions: {
ecmaVersion: 6,
sourceType: 'module',
Expand All @@ -18,6 +19,7 @@ const eslintTester = new RuleTester({
eslintTester.run('avoid-using-needs-in-controllers', rule, {
valid: [
'export default Controller.extend();',
'export default Controller.extend({ ...foo });',
'export default Controller.extend({ random: [] });',
'export default FooController.extend();',
'Controller.reopen();',
Expand Down

0 comments on commit f0fdaa8

Please sign in to comment.