Skip to content

Commit d47073a

Browse files
Merge pull request #477 from Gillespie59/development
2.4.2
2 parents dbf542b + 188bc1e commit d47073a

File tree

6 files changed

+27
-16
lines changed

6 files changed

+27
-16
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "eslint-plugin-angular",
3-
"version": "2.4.1",
3+
"version": "2.4.2",
44
"description": "ESLint rules for AngularJS projects",
55
"main": "index.js",
66
"scripts": {

rules/foreach.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ module.exports = {
1616
create: function(context) {
1717
return {
1818
MemberExpression: function(node) {
19-
if (node.object.type === 'Identifier' && node.object.name !== 'angular' && node.property.name === 'forEach') {
19+
if (node.object.name !== 'angular' && node.property.name === 'forEach') {
2020
context.report(node, 'You should use the angular.forEach method', {});
2121
}
2222
}

rules/rest-service.js

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
*/
1111
'use strict';
1212

13-
var utils = require('./utils/utils');
13+
const utils = require('./utils/utils');
1414

1515
module.exports = {
1616
meta: {
@@ -19,9 +19,9 @@ module.exports = {
1919
}]
2020
},
2121
create: function(context) {
22-
var angularObjectList = ['controller', 'filter', 'directive', 'service', 'factory', 'provider'];
23-
var services = ['$http', '$resource', 'Restangular'];
24-
var message = 'You should use the same service ({{method}}) for REST API calls';
22+
let angularObjectList = ['controller', 'filter', 'directive', 'service', 'factory', 'provider'];
23+
let services = ['$http', '$resource', 'Restangular'];
24+
let message = 'You should use the same service ({{method}}) for REST API calls';
2525

2626

2727
return {
@@ -46,6 +46,10 @@ module.exports = {
4646
var callee = node.callee;
4747

4848
if (utils.isAngularComponent(node) && callee.type === 'MemberExpression' && angularObjectList.indexOf(callee.property.name) >= 0) {
49+
if (context.options[0] === node.arguments[0].value) {
50+
return;
51+
}
52+
4953
if (utils.isFunctionType(node.arguments[1])) {
5054
checkAllElements(node.arguments[1].params);
5155
}

test/foreach.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ eslintTester.run('foreach', rule, {
1818
'angular.forEach(variable, function() {})'
1919
].concat(commonFalsePositives),
2020
invalid: [
21-
{code: 'variable.forEach(function() {})', errors: [{message: 'You should use the angular.forEach method'}]}
21+
{code: 'variable.forEach(function() {})', errors: [{message: 'You should use the angular.forEach method'}]},
22+
{code: 'a.b.forEach(function() {})', errors: [{message: 'You should use the angular.forEach method'}]}
2223
]
2324
});

test/function-type.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@ var valid = [];
1414
var invalid = [];
1515

1616
valid.push({
17+
code: '_.filter(vm.global, function (n) { return n % 2 === 0; })',
18+
options: ['anonymous']
19+
}, {
1720
code: 'angular.module("mymodule.constants", []).constant("EMPTY", [])',
1821
options: ['anonymous']
1922
}, {

test/rest-service.js

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,25 @@
44
// Requirements
55
// ------------------------------------------------------------------------------
66

7-
var rule = require('../rules/rest-service');
8-
var RuleTester = require('eslint').RuleTester;
9-
var commonFalsePositives = require('./utils/commonFalsePositives');
7+
const rule = require('../rules/rest-service');
8+
const RuleTester = require('eslint').RuleTester;
9+
const commonFalsePositives = require('./utils/commonFalsePositives');
1010

1111
// ------------------------------------------------------------------------------
1212
// Tests
1313
// ------------------------------------------------------------------------------
1414

15-
var eslintTester = new RuleTester();
16-
17-
var angularObjectList = ['controller', 'filter', 'directive', 'service', 'factory', 'provider'];
18-
var possibleValues = ['$http', '$resource', 'Restangular'];
19-
var valid = [];
20-
var invalid = [];
15+
const eslintTester = new RuleTester();
2116

17+
const angularObjectList = ['controller', 'filter', 'directive', 'service', 'factory', 'provider'];
18+
const possibleValues = ['$http', '$resource', 'Restangular'];
19+
let valid = [];
20+
let invalid = [];
2221

22+
valid.push({
23+
code: 'angular.module("name").service("cmnHttpSvc", function($http) {});',
24+
options: ['cmnHttpSvc']
25+
});
2326
angularObjectList.forEach(function(object) {
2427
possibleValues.forEach(function(value) {
2528
valid.push({

0 commit comments

Comments
 (0)