提交 938df6f1 编写于 作者: K Kevin Pilch-Bisson

Merge pull request #4771 from diryboy/FixBinaryOperatorFormatting2

Fix binary expression formatting
......@@ -253,7 +253,18 @@ public override AdjustSpacesOperation GetAdjustSpacesOperation(SyntaxToken previ
case BinaryOperatorSpacingOptions.Single:
return CreateAdjustSpacesOperation(1, AdjustSpacesOption.ForceSpacesIfOnSingleLine);
case BinaryOperatorSpacingOptions.Remove:
return CreateAdjustSpacesOperation(0, AdjustSpacesOption.ForceSpacesIfOnSingleLine);
if (currentKind == SyntaxKind.IsKeyword ||
currentKind == SyntaxKind.AsKeyword ||
previousKind == SyntaxKind.IsKeyword ||
previousKind == SyntaxKind.AsKeyword)
{
// User want spaces removed but at least one is required for the "as" & "is" keyword
return CreateAdjustSpacesOperation(1, AdjustSpacesOption.ForceSpacesIfOnSingleLine);
}
else
{
return CreateAdjustSpacesOperation(0, AdjustSpacesOption.ForceSpacesIfOnSingleLine);
}
case BinaryOperatorSpacingOptions.Ignore:
return CreateAdjustSpacesOperation(0, AdjustSpacesOption.PreserveSpaces);
default:
......
......@@ -988,6 +988,34 @@ class D
}", false, changingOptions);
}
[Fact, Trait(Traits.Feature, Traits.Features.Formatting)]
public void RemoveSpacingAroundBinaryOperatorsShouldMakeAtLeastOneSpaceForIsAndAsKeywords()
{
var changingOptions = new Dictionary<OptionKey, object>();
changingOptions.Add(CSharpFormattingOptions.SpacingAroundBinaryOperator, BinaryOperatorSpacingOptions.Remove);
AssertFormat(@"class Class2
{
public void nothing()
{
var a = 1*2+3-4/5;
a+=1;
object o = null;
string s = o as string;
bool b = o is string;
}
}", @"class Class2
{
public void nothing()
{
var a = 1 * 2 + 3 - 4 / 5;
a += 1;
object o = null;
string s = o as string;
bool b = o is string;
}
}", false, changingOptions);
}
[WorkItem(772298, "DevDiv")]
[Fact, Trait(Traits.Feature, Traits.Features.Formatting)]
public void IndentUserSettingNonDefaultTest_OpenBracesOfLambdaWithNoNewLine()
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册