From 874dd254949646a2df26b1ce992dbb5cf0fcb62f Mon Sep 17 00:00:00 2001 From: Wesley Wigham Date: Thu, 22 Mar 2018 14:59:40 -0700 Subject: [PATCH] Stop printing two spaces between heritage clauses (#22801) * Stop printing two spaces between heritage clauses * Fix lint --- src/compiler/types.ts | 2 +- src/harness/unittests/printer.ts | 6 ++++++ tests/baselines/reference/api/tsserverlibrary.d.ts | 2 +- tests/baselines/reference/api/typescript.d.ts | 2 +- tests/baselines/reference/declFileGenericType2.js | 2 +- .../printerApi/printsFileCorrectly.classHeritageClauses.js | 2 ++ 6 files changed, 12 insertions(+), 4 deletions(-) create mode 100644 tests/baselines/reference/printerApi/printsFileCorrectly.classHeritageClauses.js diff --git a/src/compiler/types.ts b/src/compiler/types.ts index c5d434072d2..4c72270a395 100644 --- a/src/compiler/types.ts +++ b/src/compiler/types.ts @@ -5161,7 +5161,7 @@ namespace ts { VariableDeclarationList = CommaDelimited | SpaceBetweenSiblings | SingleLine, SingleLineFunctionBodyStatements = SingleLine | SpaceBetweenSiblings | SpaceBetweenBraces, MultiLineFunctionBodyStatements = MultiLine, - ClassHeritageClauses = SingleLine | SpaceBetweenSiblings, + ClassHeritageClauses = SingleLine, ClassMembers = Indented | MultiLine, InterfaceMembers = Indented | MultiLine, EnumMembers = CommaDelimited | Indented | MultiLine, diff --git a/src/harness/unittests/printer.ts b/src/harness/unittests/printer.ts index 0f6a2ea3474..69b8f011626 100644 --- a/src/harness/unittests/printer.ts +++ b/src/harness/unittests/printer.ts @@ -62,6 +62,12 @@ namespace ts { // github #18071 printsCorrectly("regularExpressionLiteral", {}, printer => printer.printFile(createSourceFile("source.ts", "let regex = /abc/;", ScriptTarget.ES2017))); + + printsCorrectly("classHeritageClauses", {}, printer => printer.printFile(createSourceFile( + "source.ts", + `class A extends B implements C implements D {}`, + ScriptTarget.ES2017 + ))); }); describe("printBundle", () => { diff --git a/tests/baselines/reference/api/tsserverlibrary.d.ts b/tests/baselines/reference/api/tsserverlibrary.d.ts index ed9ac13c3eb..656ea20257d 100644 --- a/tests/baselines/reference/api/tsserverlibrary.d.ts +++ b/tests/baselines/reference/api/tsserverlibrary.d.ts @@ -2823,7 +2823,7 @@ declare namespace ts { VariableDeclarationList = 272, SingleLineFunctionBodyStatements = 384, MultiLineFunctionBodyStatements = 1, - ClassHeritageClauses = 256, + ClassHeritageClauses = 0, ClassMembers = 65, InterfaceMembers = 65, EnumMembers = 81, diff --git a/tests/baselines/reference/api/typescript.d.ts b/tests/baselines/reference/api/typescript.d.ts index 3af5746213e..c6675987efe 100644 --- a/tests/baselines/reference/api/typescript.d.ts +++ b/tests/baselines/reference/api/typescript.d.ts @@ -2823,7 +2823,7 @@ declare namespace ts { VariableDeclarationList = 272, SingleLineFunctionBodyStatements = 384, MultiLineFunctionBodyStatements = 1, - ClassHeritageClauses = 256, + ClassHeritageClauses = 0, ClassMembers = 65, InterfaceMembers = 65, EnumMembers = 81, diff --git a/tests/baselines/reference/declFileGenericType2.js b/tests/baselines/reference/declFileGenericType2.js index ad9ec95d700..05424d0d024 100644 --- a/tests/baselines/reference/declFileGenericType2.js +++ b/tests/baselines/reference/declFileGenericType2.js @@ -117,7 +117,7 @@ declare module templa.dom.mvc { } } declare module templa.dom.mvc { - class AbstractElementController extends templa.mvc.AbstractController implements IElementController { + class AbstractElementController extends templa.mvc.AbstractController implements IElementController { constructor(); } } diff --git a/tests/baselines/reference/printerApi/printsFileCorrectly.classHeritageClauses.js b/tests/baselines/reference/printerApi/printsFileCorrectly.classHeritageClauses.js new file mode 100644 index 00000000000..2782752276c --- /dev/null +++ b/tests/baselines/reference/printerApi/printsFileCorrectly.classHeritageClauses.js @@ -0,0 +1,2 @@ +class A extends B implements C implements D { +}