Skip to content

Commit 670726c

Browse files
authored
Merge pull request #933 from bmish/routes-segments-snake-case-fix-spread
Fix spread syntax crash in `routes-segments-snake-case` rule
2 parents e3746be + 4efe5b9 commit 670726c

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

lib/rules/routes-segments-snake-case.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,12 @@ module.exports = {
3131
};
3232

3333
const isSegment = function (property) {
34-
return property.key.name === 'path' && routeSegmentRegex.test(property.value.value);
34+
return (
35+
types.isProperty(property) &&
36+
types.isIdentifier(property.key) &&
37+
property.key.name === 'path' &&
38+
routeSegmentRegex.test(property.value.value)
39+
);
3540
};
3641

3742
const getSegmentNames = function (property) {

tests/lib/rules/routes-segments-snake-case.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ const RuleTester = require('eslint').RuleTester;
99
// Tests
1010
// ------------------------------------------------------------------------------
1111

12-
const eslintTester = new RuleTester();
12+
const eslintTester = new RuleTester({ parser: require.resolve('babel-eslint') });
1313
eslintTester.run('routes-segments-snake-case', rule, {
1414
valid: [
1515
'this.route("tree", { path: ":tree_id"});',
@@ -26,6 +26,7 @@ eslintTester.run('routes-segments-snake-case', rule, {
2626
'this.route("tree", { path: "/test/:tree_id/test-test/:tree_child_id"});',
2727
'this.route("tree", { path: "/test/:tree_id/testTest/:tree_child_id"});',
2828
'this.route("tree", { path: "*:"});',
29+
'this.route("tree", { ...foo });',
2930
],
3031
invalid: [
3132
{

0 commit comments

Comments
 (0)