mirror of
https://git.proxmox.com/git/pve-eslint
synced 2025-10-05 16:41:10 +00:00

includes a (minimal) working wrapper Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
92 lines
1.4 KiB
Markdown
92 lines
1.4 KiB
Markdown
# Rule to disallow a duplicate case label (no-duplicate-case)
|
|
|
|
If a `switch` statement has duplicate test expressions in `case` clauses, it is likely that a programmer copied a `case` clause but forgot to change the test expression.
|
|
|
|
## Rule Details
|
|
|
|
This rule disallows duplicate test expressions in `case` clauses of `switch` statements.
|
|
|
|
Examples of **incorrect** code for this rule:
|
|
|
|
```js
|
|
/*eslint no-duplicate-case: "error"*/
|
|
|
|
var a = 1,
|
|
one = 1;
|
|
|
|
switch (a) {
|
|
case 1:
|
|
break;
|
|
case 2:
|
|
break;
|
|
case 1: // duplicate test expression
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
switch (a) {
|
|
case one:
|
|
break;
|
|
case 2:
|
|
break;
|
|
case one: // duplicate test expression
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
switch (a) {
|
|
case "1":
|
|
break;
|
|
case "2":
|
|
break;
|
|
case "1": // duplicate test expression
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
```
|
|
|
|
Examples of **correct** code for this rule:
|
|
|
|
```js
|
|
/*eslint no-duplicate-case: "error"*/
|
|
|
|
var a = 1,
|
|
one = 1;
|
|
|
|
switch (a) {
|
|
case 1:
|
|
break;
|
|
case 2:
|
|
break;
|
|
case 3:
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
switch (a) {
|
|
case one:
|
|
break;
|
|
case 2:
|
|
break;
|
|
case 3:
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
switch (a) {
|
|
case "1":
|
|
break;
|
|
case "2":
|
|
break;
|
|
case "3":
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
```
|