From 671aeeaf743effeff0969e3bb5972b8652dbb06e Mon Sep 17 00:00:00 2001 From: Daniel Supplieth Date: Fri, 4 Oct 2019 17:36:33 +0200 Subject: [PATCH] Add missing converter: newline-before-return To #164 --- src/rules/converters.ts | 3 ++- src/rules/converters/newline-before-return.ts | 19 ++++++++++++++ .../tests/newline-before-return.test.ts | 25 +++++++++++++++++++ 3 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 src/rules/converters/newline-before-return.ts create mode 100644 src/rules/converters/tests/newline-before-return.test.ts diff --git a/src/rules/converters.ts b/src/rules/converters.ts index 96a036500..01fa349e2 100644 --- a/src/rules/converters.ts +++ b/src/rules/converters.ts @@ -25,6 +25,7 @@ import { convertMaxClassesPerFile } from "./converters/max-classes-per-file"; import { convertMaxFileLineCount } from "./converters/max-file-line-count"; import { convertMaxLineLength } from "./converters/max-line-length"; import { convertMemberOrdering } from "./converters/member-ordering"; +import { convertNewlineBeforeReturn } from "./converters/newline-before-return"; import { convertNewlinePerChainedCall } from "./converters/newline-per-chained-call"; import { convertNewParens } from "./converters/new-parens"; import { convertNoAngleBracketTypeAssertion } from "./converters/no-angle-bracket-type-assertion"; @@ -132,6 +133,7 @@ export const converters = new Map([ ["member-access", convertMemberAccess], ["member-ordering", convertMemberOrdering], ["new-parens", convertNewParens], + ["newline-before-return", convertNewlineBeforeReturn], ["newline-per-chained-call", convertNewlinePerChainedCall], ["no-angle-bracket-type-assertion", convertNoAngleBracketTypeAssertion], ["no-any", convertNoExplicitAny], @@ -230,7 +232,6 @@ export const converters = new Map([ // TSLint core rules: // ["ban", convertBan], // no-restricted-properties // ["import-blacklist", convertImportBlacklist], // no-restricted-imports - // ["newline-before-return", convertNewlineBeforeReturn], // ["no-duplicate-variable", convertNoDuplicateVariable], // no-redeclare // ["no-shadowed-variable", convertNoShadowedVariable], // no-shadow // ["no-trailing-whitespace", convertNoTrailingWhitespace], // no-trailing-spaces diff --git a/src/rules/converters/newline-before-return.ts b/src/rules/converters/newline-before-return.ts new file mode 100644 index 000000000..3e6916a2f --- /dev/null +++ b/src/rules/converters/newline-before-return.ts @@ -0,0 +1,19 @@ +import { RuleConverter } from "../converter"; + +export const convertNewlineBeforeReturn: RuleConverter = () => { + return { + rules: [ + { + ruleName: "padding-line-between-statements", + ruleArguments: [ + "error", + { + blankLine: "always", + prev: "*", + next: "return", + }, + ], + }, + ], + }; +}; diff --git a/src/rules/converters/tests/newline-before-return.test.ts b/src/rules/converters/tests/newline-before-return.test.ts new file mode 100644 index 000000000..97f8dc75a --- /dev/null +++ b/src/rules/converters/tests/newline-before-return.test.ts @@ -0,0 +1,25 @@ +import { convertNewlineBeforeReturn } from "../newline-before-return"; + +describe(convertNewlineBeforeReturn, () => { + test("conversion without arguments", () => { + const result = convertNewlineBeforeReturn({ + ruleArguments: [], + }); + + expect(result).toEqual({ + rules: [ + { + ruleName: "padding-line-between-statements", + ruleArguments: [ + "error", + { + blankLine: "always", + next: "return", + prev: "*", + }, + ], + }, + ], + }); + }); +});