diff --git a/src/converters/lintConfigs/rules/ruleConverters.ts b/src/converters/lintConfigs/rules/ruleConverters.ts index 093edb285..756eca90e 100644 --- a/src/converters/lintConfigs/rules/ruleConverters.ts +++ b/src/converters/lintConfigs/rules/ruleConverters.ts @@ -47,6 +47,7 @@ import { convertNoConsole } from "./ruleConverters/no-console"; import { convertNoConstantCondition } from "./ruleConverters/no-constant-condition"; import { convertNoConstruct } from "./ruleConverters/no-construct"; import { convertNoControlRegex } from "./ruleConverters/no-control-regex"; +import { convertNoCookies } from "./ruleConverters/no-cookies"; import { convertNoDebugger } from "./ruleConverters/no-debugger"; import { convertNoDefaultExport } from "./ruleConverters/no-default-export"; import { convertNoDuplicateImports } from "./ruleConverters/no-duplicate-imports"; @@ -299,6 +300,7 @@ export const ruleConverters = new Map([ ["no-constant-condition", convertNoConstantCondition], ["no-construct", convertNoConstruct], ["no-control-regex", convertNoControlRegex], + ["no-cookies", convertNoCookies], ["no-debugger", convertNoDebugger], ["no-default-export", convertNoDefaultExport], ["no-duplicate-imports", convertNoDuplicateImports], diff --git a/src/converters/lintConfigs/rules/ruleConverters/no-cookies.ts b/src/converters/lintConfigs/rules/ruleConverters/no-cookies.ts new file mode 100644 index 000000000..1675e6381 --- /dev/null +++ b/src/converters/lintConfigs/rules/ruleConverters/no-cookies.ts @@ -0,0 +1,17 @@ +import { RuleConverter } from "../ruleConverter"; + +export const convertNoCookies: RuleConverter = () => { + return { + rules: [ + { + ruleArguments: [ + { + message: "Forbidden call to document.cookie", + selector: 'MemberExpression[object.name="document"][property.name="cookie"]', + } + ], + ruleName: "restricted-syntax", + }, + ], + }; +}; diff --git a/src/converters/lintConfigs/rules/ruleConverters/tests/no-cookies.test.ts b/src/converters/lintConfigs/rules/ruleConverters/tests/no-cookies.test.ts new file mode 100644 index 000000000..27e384458 --- /dev/null +++ b/src/converters/lintConfigs/rules/ruleConverters/tests/no-cookies.test.ts @@ -0,0 +1,23 @@ +import { convertNoCookies } from "../no-cookies"; + +describe(convertNoCookies, () => { + test("conversion without arguments", () => { + const result = convertNoCookies({ + ruleArguments: [], + }); + + expect(result).toEqual({ + rules: [ + { + ruleArguments: [ + { + message: "Forbidden call to document.cookie", + selector: 'MemberExpression[object.name="document"][property.name="cookie"]', + } + ], + ruleName: "restricted-syntax", + }, + ], + }); + }); +});