Skip to content

Commit 65076e9

Browse files
fix: issues reported by eslint-remote-tester (#60)
* fix: issues reported by eslint-remote-tester
1 parent df981f9 commit 65076e9

15 files changed

+36
-2
lines changed

lib/rules/no-unused-prop-types.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ const belongsToReduxReact = (node, objectName, destrArg) => {
1010
const secondArgumentName = secondArgument && secondArgument.type === 'Identifier' && secondArgument.name;
1111
return (secondArgumentName === objectName // ownProps.myProp
1212
|| destrArg === secondArgument // {myProp} in fn argument
13-
|| (destrArg && destrArg.parent.type === 'VariableDeclarator' && destrArg.parent.init.name === secondArgumentName) // const {myProp} = ownProps;
13+
|| (destrArg && destrArg.parent.type === 'VariableDeclarator' && destrArg.parent.init && destrArg.parent.init.name === secondArgumentName) // const {myProp} = ownProps;
1414
);
1515
};
1616
let isReactRedux = false;

lib/rules/useSelector-prefer-selectors.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ module.exports = function (context) {
2828
) {
2929
reportNoSelector(context, node);
3030
} else if (
31-
selector.type === 'Identifier' &&
31+
selector && selector.type === 'Identifier' &&
3232
config.matching &&
3333
!selector.name.match(new RegExp(config.matching))
3434
) {

tests/code-sanity-samples.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
module.exports = [
2+
'expect(() => useSelector()).toThrow();',
3+
`const rows = [];
4+
function mapStateToProps(state, ownProps) {
5+
for (const { value } of rows) {
6+
}
7+
}
8+
`,
9+
];

tests/lib/rules/connect-prefer-minimum-two-arguments.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ require('babel-eslint');
22

33
const rule = require('../../../lib/rules/connect-prefer-minimum-two-arguments');
44
const RuleTester = require('eslint').RuleTester;
5+
const codeSamples = require('../../code-sanity-samples');
56

67
const parserOptions = {
78
ecmaVersion: 6,
@@ -15,6 +16,7 @@ const ruleTester = new RuleTester({ parserOptions });
1516

1617
ruleTester.run('connect-prefer-minimum-two-arguments', rule, {
1718
valid: [
19+
...codeSamples,
1820
'connect(mapStateToProps, mapDispatchToProps, mergeProps, options)(Component)',
1921
'connect(mapStateToProps, mapDispatchToProps)(Component)',
2022
'connect({prop1, prop2}, {action1, action2})(Component)',

tests/lib/rules/connect-prefer-named-arguments.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ require('babel-eslint');
22

33
const rule = require('../../../lib/rules/connect-prefer-named-arguments');
44
const RuleTester = require('eslint').RuleTester;
5+
const codeSamples = require('../../code-sanity-samples');
56

67
const parserOptions = {
78
ecmaVersion: 6,
@@ -15,6 +16,7 @@ const ruleTester = new RuleTester({ parserOptions });
1516

1617
ruleTester.run('connect-prefer-named-arguments', rule, {
1718
valid: [
19+
...codeSamples,
1820
'export default connect(null, mapDispatchToProps)(TodoApp)',
1921
'connect(mapStateToProps, mapDispatchToProps, mergeProps, options)(Component)',
2022
'connect(mapStateToProps, mapDispatchToProps)(Component)',

tests/lib/rules/mapDispatchToProps-prefer-parameters-names.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ require('babel-eslint');
22

33
const rule = require('../../../lib/rules/mapDispatchToProps-prefer-parameters-names');
44
const RuleTester = require('eslint').RuleTester;
5+
const codeSamples = require('../../code-sanity-samples');
56

67
const parserOptions = {
78
ecmaVersion: 6,
@@ -15,6 +16,7 @@ const ruleTester = new RuleTester({ parserOptions });
1516

1617
ruleTester.run('mapDispatchToProps-prefer-parameters-names', rule, {
1718
valid: [
19+
...codeSamples,
1820
'const mapDispatchToProps = (dispatch, ownProps) => {}',
1921
'const mapDispatchToProps = (dispatch, {prop1, prop2}) => {}',
2022
'const mapDispatchToProps = (dispatch) => {}',

tests/lib/rules/mapDispatchToProps-prefer-shorthand.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ require('babel-eslint');
22

33
const rule = require('../../../lib/rules/mapDispatchToProps-prefer-shorthand');
44
const RuleTester = require('eslint').RuleTester;
5+
const codeSamples = require('../../code-sanity-samples');
6+
57

68
const parserOptions = {
79
ecmaVersion: 6,
@@ -15,6 +17,7 @@ const ruleTester = new RuleTester({ parserOptions });
1517

1618
ruleTester.run('mapDispatchToProps-prefer-shorthand', rule, {
1719
valid: [
20+
...codeSamples,
1821
'function mapDispatchToProps () {return {action}}',
1922
`const mapDispatchToProps = dispatch => ({
2023
onDoSomething: function() {return dispatch(toDo())},

tests/lib/rules/mapDispatchToProps-returns-object.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ require('babel-eslint');
22

33
const rule = require('../../../lib/rules/mapDispatchToProps-returns-object');
44
const RuleTester = require('eslint').RuleTester;
5+
const codeSamples = require('../../code-sanity-samples');
56

67
const parserOptions = {
78
ecmaVersion: 6,
@@ -15,6 +16,7 @@ const ruleTester = new RuleTester({ parserOptions });
1516

1617
ruleTester.run('mapDispatchToProps-returns-object', rule, {
1718
valid: [
19+
...codeSamples,
1820
'const mapDispatchToProps = {}',
1921
'const mapDispatchToProps = null',
2022
'const mapDispatchToProps = actionsMap',

tests/lib/rules/mapStateToProps-no-store.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ require('babel-eslint');
22

33
const rule = require('../../../lib/rules/mapStateToProps-no-store');
44
const RuleTester = require('eslint').RuleTester;
5+
const codeSamples = require('../../code-sanity-samples');
56

67
const parserOptions = {
78
ecmaVersion: 6,
@@ -15,6 +16,7 @@ const ruleTester = new RuleTester({ parserOptions });
1516

1617
ruleTester.run('mapStateToProps-no-store', rule, {
1718
valid: [
19+
...codeSamples,
1820
` const mapStateToProps = state => ({
1921
...getSomeStateFromASelector(state),
2022
showDefaultHeader: showDefaultHeader(state),

tests/lib/rules/mapStateToProps-prefer-hoisted.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ require('babel-eslint');
22

33
const rule = require('../../../lib/rules/mapStateToProps-prefer-hoisted');
44
const RuleTester = require('eslint').RuleTester;
5+
const codeSamples = require('../../code-sanity-samples');
56

67
const parserOptions = {
78
ecmaVersion: 6,
@@ -17,6 +18,7 @@ const ruleTester = new RuleTester({ parserOptions });
1718

1819
ruleTester.run('mapStateToProps-prefer-hoisted', rule, {
1920
valid: [
21+
...codeSamples,
2022
`function mapStateToProps(state) {
2123
return {};
2224
}`,

0 commit comments

Comments
 (0)