diff --git a/its/ruling/src/test/expected/jsts/desktop/typescript-S1541.json b/its/ruling/src/test/expected/jsts/desktop/typescript-S1541.json index be4c344e53..22c0490924 100644 --- a/its/ruling/src/test/expected/jsts/desktop/typescript-S1541.json +++ b/its/ruling/src/test/expected/jsts/desktop/typescript-S1541.json @@ -17,6 +17,9 @@ "desktop:app/src/lib/create-branch.ts": [ 10 ], +"desktop:app/src/lib/git/cherry-pick.ts": [ +216 +], "desktop:app/src/lib/git/core.ts": [ 157, 309 @@ -45,9 +48,15 @@ "desktop:app/src/lib/markdown-filters/close-keyword-filter.ts": [ 105 ], +"desktop:app/src/lib/markdown-filters/commit-mention-filter.ts": [ +178 +], "desktop:app/src/lib/markdown-filters/issue-mention-filter.ts": [ 127 ], +"desktop:app/src/lib/markdown-filters/mention-filter.ts": [ +90 +], "desktop:app/src/lib/markdown-filters/team-mention-filter.ts": [ 75 ], diff --git a/its/ruling/src/test/expected/jsts/eigen/typescript-S1541.json b/its/ruling/src/test/expected/jsts/eigen/typescript-S1541.json index eed918b2bf..ef0ad6a869 100644 --- a/its/ruling/src/test/expected/jsts/eigen/typescript-S1541.json +++ b/its/ruling/src/test/expected/jsts/eigen/typescript-S1541.json @@ -5,6 +5,9 @@ "eigen:src/app/Components/ArtsyWebView.tsx": [ 211 ], +"eigen:src/app/Components/ArtworkFilter/ArtworkFilterHelpers.ts": [ +496 +], "eigen:src/app/Components/ArtworkFilter/ArtworkFilterNavigator.tsx": [ 178 ], @@ -142,6 +145,9 @@ "eigen:src/app/Scenes/MyCollection/Screens/ArtworkList/MyCollectionArtworkGridItem.tsx": [ 22 ], +"eigen:src/app/Scenes/MyCollection/utils/initializeSubmissionArtworkForm.ts": [ +5 +], "eigen:src/app/Scenes/MyProfile/MyProfileEditForm.tsx": [ 64 ], diff --git a/its/ruling/src/test/expected/jsts/vuetify/typescript-S1541.json b/its/ruling/src/test/expected/jsts/vuetify/typescript-S1541.json index 7596690ab2..f71bff20ab 100644 --- a/its/ruling/src/test/expected/jsts/vuetify/typescript-S1541.json +++ b/its/ruling/src/test/expected/jsts/vuetify/typescript-S1541.json @@ -42,6 +42,9 @@ "vuetify:packages/vuetify/src/components/VList/VList.tsx": [ 194 ], +"vuetify:packages/vuetify/src/components/VList/VListChildren.tsx": [ +37 +], "vuetify:packages/vuetify/src/components/VList/VListItem.tsx": [ 171 ], @@ -93,7 +96,8 @@ 283 ], "vuetify:packages/vuetify/src/composables/theme.ts": [ -208 +208, +408 ], "vuetify:packages/vuetify/src/directives/touch/index.ts": [ 47 diff --git a/packages/jsts/src/rules/S1541/rule.ts b/packages/jsts/src/rules/S1541/rule.ts index 2333745306..a92ba30ed0 100644 --- a/packages/jsts/src/rules/S1541/rule.ts +++ b/packages/jsts/src/rules/S1541/rule.ts @@ -177,9 +177,10 @@ class FunctionComplexityVisitor { token = sourceCode.getFirstToken(node); break; case 'LogicalExpression': - token = sourceCode.getTokenAfter( + token = sourceCode.getFirstTokenBetween( node.left, - token => ['||', '&&'].includes(token.value) && token.type === 'Punctuator', + node.right, + token => token.value === node.operator, ); break; } diff --git a/packages/jsts/src/rules/S1541/unit.test.ts b/packages/jsts/src/rules/S1541/unit.test.ts index ae16ecddd7..3f05f50765 100644 --- a/packages/jsts/src/rules/S1541/unit.test.ts +++ b/packages/jsts/src/rules/S1541/unit.test.ts @@ -246,7 +246,9 @@ describe('S1541', () => { //P^^ a = true && false; //^^ - c = true || false; + b = true || false; + //^^ + c = true ?? false; //^^ } `), diff --git a/packages/jsts/tests/tools/testers/rule-tester.ts b/packages/jsts/tests/tools/testers/rule-tester.ts index a699a3304d..2be543289f 100644 --- a/packages/jsts/tests/tools/testers/rule-tester.ts +++ b/packages/jsts/tests/tools/testers/rule-tester.ts @@ -27,7 +27,7 @@ type Tests = { }; const baseLanguageOptions: Linter.LanguageOptions = { - ecmaVersion: 2018, + ecmaVersion: 2022, sourceType: 'module', globals: { ...globals.es2025,