fix(35474): formatter incorrectly adds space after increment (#35550)

This commit is contained in:
Alexander T 2019-12-23 22:27:54 +02:00 committed by Daniel Rosenwasser
parent 05a2f1b110
commit a39a675696
2 changed files with 33 additions and 1 deletions

View File

@ -433,9 +433,9 @@ namespace ts.formatting {
}
function isBinaryOpContext(context: FormattingContext): boolean {
switch (context.contextNode.kind) {
case SyntaxKind.BinaryExpression:
return (<BinaryExpression>context.contextNode).operatorToken.kind !== SyntaxKind.CommaToken;
case SyntaxKind.ConditionalExpression:
case SyntaxKind.ConditionalType:
case SyntaxKind.AsExpression:

View File

@ -0,0 +1,32 @@
/// <reference path="fourslash.ts"/>
////let i = 0;
/////*1*/(i++,i++);
/////*2*/(i++,++i);
/////*3*/(1,2);
/////*4*/(i++,2);
/////*5*/(i++,i++,++i,i--,2);
////let s = 'foo';
/////*6*/for (var i = 0,ii = 2; i < s.length; ii++,i++) {
////}
format.document();
goTo.marker("1");
verify.currentLineContentIs(`(i++, i++);`);
goTo.marker("2");
verify.currentLineContentIs(`(i++, ++i);`);
goTo.marker("3");
verify.currentLineContentIs(`(1, 2);`);
goTo.marker("4");
verify.currentLineContentIs(`(i++, 2);`);
goTo.marker("5");
verify.currentLineContentIs(`(i++, i++, ++i, i--, 2);`);
goTo.marker("6");
verify.currentLineContentIs(`for (var i = 0, ii = 2; i < s.length; ii++, i++) {`);