mirror of
https://github.com/bitwarden/browser
synced 2025-12-14 23:33:31 +00:00
fix(enums-eslint): Enum Rule for ESLint (#14650)
* fix(enums-eslint): Enum Rule for ESLint - Added enums in the warnings for eslint. * fix(enums-eslint): Enum Rule for ESLint - Updated to error in both places for enums. * fix(enums-eslint): Enum Rule for ESLint - Added new eslint plugin for warning on enums. * fix(enums-eslint): Enum Rule for ESLint - Changed based on suggestion. Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com> * refactor(browser-platform-utils): Remove Deprecation and Fix Code - Changed usages of firefox to private and moved the usages to the preferred public method and removed the deprecations. * fix(enums-eslint): Enum Rule for ESLint - Updated to error and added disable rules for all other places. * fix(enums-eslint): Enum Rule for ESLint - Undid other changes by accident
This commit is contained in:
committed by
GitHub
parent
9f3310ed7e
commit
0b0397c3f0
71
libs/eslint/platform/no-enums.spec.mjs
Normal file
71
libs/eslint/platform/no-enums.spec.mjs
Normal file
@@ -0,0 +1,71 @@
|
||||
import { RuleTester } from "@typescript-eslint/rule-tester";
|
||||
|
||||
import rule, { errorMessage } from "./no-enums.mjs";
|
||||
|
||||
const ruleTester = new RuleTester({
|
||||
languageOptions: {
|
||||
parserOptions: {
|
||||
project: [__dirname + "/../tsconfig.spec.json"],
|
||||
projectService: {
|
||||
allowDefaultProject: ["*.ts*"],
|
||||
},
|
||||
tsconfigRootDir: __dirname + "/..",
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
ruleTester.run("no-enums", rule.default, {
|
||||
valid: [
|
||||
{
|
||||
name: "Using const instead of enum",
|
||||
code: `
|
||||
const Status = {
|
||||
Active: "active",
|
||||
Inactive: "inactive",
|
||||
} as const;
|
||||
`,
|
||||
},
|
||||
{
|
||||
name: "Using const with type",
|
||||
code: `
|
||||
const Status = {
|
||||
Active: "active",
|
||||
Inactive: "inactive",
|
||||
} as const;
|
||||
type Status = typeof Status[keyof typeof Status];
|
||||
`,
|
||||
},
|
||||
],
|
||||
invalid: [
|
||||
{
|
||||
name: "Using enum declaration",
|
||||
code: `
|
||||
enum Status {
|
||||
Active = "active",
|
||||
Inactive = "inactive",
|
||||
}
|
||||
`,
|
||||
errors: [
|
||||
{
|
||||
message: errorMessage,
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
name: "Using enum with numeric values",
|
||||
code: `
|
||||
enum Direction {
|
||||
Up = 1,
|
||||
Down = 2,
|
||||
Left = 3,
|
||||
Right = 4,
|
||||
}
|
||||
`,
|
||||
errors: [
|
||||
{
|
||||
message: errorMessage,
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
});
|
||||
Reference in New Issue
Block a user