From 6e241f3d2f0125ee4f073e791574975df62f80f0 Mon Sep 17 00:00:00 2001 From: yassin-kammoun-sonarsource Date: Fri, 20 Sep 2024 14:44:21 +0200 Subject: [PATCH] JS-239 Update S1301 (`no-small-switch`): Align the implementation with the rule description --- packages/jsts/src/rules/S1301/rule.ts | 4 ++-- packages/jsts/src/rules/S1301/unit.test.ts | 8 ++++---- .../org/sonar/l10n/javascript/rules/javascript/S1301.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/jsts/src/rules/S1301/rule.ts b/packages/jsts/src/rules/S1301/rule.ts index 15e6ab8fa37..5a94b0d6797 100644 --- a/packages/jsts/src/rules/S1301/rule.ts +++ b/packages/jsts/src/rules/S1301/rule.ts @@ -27,7 +27,7 @@ import { meta } from './meta'; export const rule: Rule.RuleModule = { meta: generateMeta(meta as Rule.RuleMetaData, { messages: { - smallSwitch: '"switch" statements should have at least 3 "case" clauses', + replaceSwitch: 'Replace this "switch" statement by "if" statements to increase readability.', }, }), create(context) { @@ -39,7 +39,7 @@ export const rule: Rule.RuleModule = { const firstToken = context.sourceCode.getFirstToken(node); if (firstToken) { context.report({ - messageId: 'smallSwitch', + messageId: 'replaceSwitch', loc: firstToken.loc, }); } diff --git a/packages/jsts/src/rules/S1301/unit.test.ts b/packages/jsts/src/rules/S1301/unit.test.ts index 0ab354184da..784f6700ab1 100644 --- a/packages/jsts/src/rules/S1301/unit.test.ts +++ b/packages/jsts/src/rules/S1301/unit.test.ts @@ -22,7 +22,7 @@ import { JavaScriptRuleTester } from '../../../tests/tools'; const ruleTester = new JavaScriptRuleTester(); -ruleTester.run('no-small-switch', rule, { +ruleTester.run('"if" statements should be preferred over "switch" when simpler', rule, { valid: [ { code: 'switch (a) { case 1: case 2: break; default: doSomething(); break; }' }, { code: 'switch (a) { case 1: break; default: doSomething(); break; case 2: }' }, @@ -33,7 +33,7 @@ ruleTester.run('no-small-switch', rule, { code: 'switch (a) { case 1: doSomething(); break; default: doSomething(); }', errors: [ { - messageId: 'smallSwitch', + messageId: 'replaceSwitch', column: 1, endColumn: 7, }, @@ -43,7 +43,7 @@ ruleTester.run('no-small-switch', rule, { code: 'switch (a) { case 1: break; }', errors: [ { - messageId: 'smallSwitch', + messageId: 'replaceSwitch', column: 1, endColumn: 7, }, @@ -53,7 +53,7 @@ ruleTester.run('no-small-switch', rule, { code: 'switch (a) {}', errors: [ { - messageId: 'smallSwitch', + messageId: 'replaceSwitch', column: 1, endColumn: 7, }, diff --git a/sonar-plugin/javascript-checks/src/main/resources/org/sonar/l10n/javascript/rules/javascript/S1301.json b/sonar-plugin/javascript-checks/src/main/resources/org/sonar/l10n/javascript/rules/javascript/S1301.json index 357d4efbabb..f3bb166dc5d 100644 --- a/sonar-plugin/javascript-checks/src/main/resources/org/sonar/l10n/javascript/rules/javascript/S1301.json +++ b/sonar-plugin/javascript-checks/src/main/resources/org/sonar/l10n/javascript/rules/javascript/S1301.json @@ -1,5 +1,5 @@ { - "title": "\"switch\" statements should have at least 3 \"case\" clauses", + "title": "\"if\" statements should be preferred over \"switch\" when simpler", "type": "CODE_SMELL", "code": { "impacts": {