diff --git a/src/converters/lintConfigs/rules/ruleConverters.ts b/src/converters/lintConfigs/rules/ruleConverters.ts index 6cff59b6e..3256b4435 100644 --- a/src/converters/lintConfigs/rules/ruleConverters.ts +++ b/src/converters/lintConfigs/rules/ruleConverters.ts @@ -193,11 +193,13 @@ import { convertNoInternal } from "./ruleConverters/eslint-plugin-rxjs/no-intern import { convertNoNestedSubscribe } from "./ruleConverters/eslint-plugin-rxjs/no-nested-subscribe"; import { convertNoRedundantNotify } from "./ruleConverters/eslint-plugin-rxjs/no-redundant-notify"; import { convertNoShareReplay } from "./ruleConverters/eslint-plugin-rxjs/no-sharereplay"; +import { convertNoSubjectUnubscribe } from "./ruleConverters/eslint-plugin-rxjs/no-subject-unsubscribe"; import { convertNoSubjectValue } from "./ruleConverters/eslint-plugin-rxjs/no-subject-value"; import { convertNoUnboundMethods } from "./ruleConverters/eslint-plugin-rxjs/no-unbound-methods"; import { convertNoUnsafeSubjectNext } from "./ruleConverters/eslint-plugin-rxjs/no-unsafe-subject-next"; /** + * Keys TSLint rule names to their ESLint rule converters. */ export const ruleConverters = new Map([ ["adjacent-overload-signatures", convertAdjacentOverloadSignatures], @@ -390,6 +392,7 @@ export const ruleConverters = new Map([ ["rxjs-no-nested-subscribe", convertNoNestedSubscribe], ["rxjs-no-redundant-notify", convertNoRedundantNotify], ["rxjs-no-sharereplay", convertNoShareReplay], + ["rxjs-no-subject-unsubscribe", convertNoSubjectUnubscribe], ["rxjs-no-subject-value", convertNoSubjectValue], ["rxjs-no-unbound-methods", convertNoUnboundMethods], ["rxjs-no-unsafe-subject-next", convertNoUnsafeSubjectNext], diff --git a/src/converters/lintConfigs/rules/ruleConverters/eslint-plugin-rxjs/no-subject-unsubscribe.ts b/src/converters/lintConfigs/rules/ruleConverters/eslint-plugin-rxjs/no-subject-unsubscribe.ts new file mode 100644 index 000000000..b03edc83e --- /dev/null +++ b/src/converters/lintConfigs/rules/ruleConverters/eslint-plugin-rxjs/no-subject-unsubscribe.ts @@ -0,0 +1,12 @@ +import { RuleConverter } from "../../ruleConverter"; + +export const convertNoSubjectUnubscribe: RuleConverter = () => { + return { + rules: [ + { + ruleName: "rxjs/no-subject-unsubscribe", + }, + ], + plugins: ["eslint-plugin-rxjs"], + }; +}; diff --git a/src/converters/lintConfigs/rules/ruleConverters/eslint-plugin-rxjs/tests/no-subject-unsubscribe.test.ts b/src/converters/lintConfigs/rules/ruleConverters/eslint-plugin-rxjs/tests/no-subject-unsubscribe.test.ts new file mode 100644 index 000000000..3578f4b3e --- /dev/null +++ b/src/converters/lintConfigs/rules/ruleConverters/eslint-plugin-rxjs/tests/no-subject-unsubscribe.test.ts @@ -0,0 +1,18 @@ +import { convertNoSubjectUnubscribe } from "../no-subject-unsubscribe"; + +describe(convertNoSubjectUnubscribe, () => { + test("conversion without arguments", () => { + const result = convertNoSubjectUnubscribe({ + ruleArguments: [], + }); + + expect(result).toEqual({ + rules: [ + { + ruleName: "rxjs/no-subject-unsubscribe", + }, + ], + plugins: ["eslint-plugin-rxjs"], + }); + }); +});