Browse Source

Removed brace forcement formatting options.

They didn't work very well and shouldn't be part of the formatting
visitor (could be added with a FixBracementVisitor).
pull/32/merge
Mike Krüger 13 years ago
parent
commit
fdab2395f0
  1. 126
      ICSharpCode.NRefactory.CSharp/Formatter/AstFormattingVisitor.cs
  2. 40
      ICSharpCode.NRefactory.CSharp/Formatter/CSharpFormattingOptions.cs
  3. 21
      ICSharpCode.NRefactory.CSharp/Formatter/FormattingOptionsFactory.cs
  4. 393
      ICSharpCode.NRefactory.Tests/FormattingTests/TestStatementIndentation.cs

126
ICSharpCode.NRefactory.CSharp/Formatter/AstFormattingVisitor.cs

@ -1097,7 +1097,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1097,7 +1097,7 @@ namespace ICSharpCode.NRefactory.CSharp
public override void VisitCheckedStatement(CheckedStatement checkedStatement)
{
FixEmbeddedStatment(policy.StatementBraceStyle, policy.FixedBraceForcement, checkedStatement.Body);
FixEmbeddedStatment(policy.StatementBraceStyle, checkedStatement.Body);
}
public override void VisitContinueStatement(ContinueStatement continueStatement)
@ -1112,7 +1112,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1112,7 +1112,7 @@ namespace ICSharpCode.NRefactory.CSharp
public override void VisitFixedStatement(FixedStatement fixedStatement)
{
FixEmbeddedStatment(policy.StatementBraceStyle, policy.FixedBraceForcement, fixedStatement.EmbeddedStatement);
FixEmbeddedStatment(policy.StatementBraceStyle, fixedStatement.EmbeddedStatement);
}
public override void VisitForeachStatement(ForeachStatement foreachStatement)
@ -1122,15 +1122,15 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1122,15 +1122,15 @@ namespace ICSharpCode.NRefactory.CSharp
ForceSpacesAfter(foreachStatement.LParToken, policy.SpacesWithinForeachParentheses);
ForceSpacesBefore(foreachStatement.RParToken, policy.SpacesWithinForeachParentheses);
FixEmbeddedStatment(policy.StatementBraceStyle, policy.ForEachBraceForcement, foreachStatement.EmbeddedStatement);
FixEmbeddedStatment(policy.StatementBraceStyle, foreachStatement.EmbeddedStatement);
}
void FixEmbeddedStatment(BraceStyle braceStyle, BraceForcement braceForcement, AstNode node)
void FixEmbeddedStatment(BraceStyle braceStyle, AstNode node)
{
FixEmbeddedStatment(braceStyle, braceForcement, null, false, node);
FixEmbeddedStatment(braceStyle, null, false, node);
}
void FixEmbeddedStatment(BraceStyle braceStyle, BraceForcement braceForcement, CSharpTokenNode token, bool allowInLine, AstNode node, bool statementAlreadyIndented = false)
void FixEmbeddedStatment(BraceStyle braceStyle, CSharpTokenNode token, bool allowInLine, AstNode node, bool statementAlreadyIndented = false)
{
if (node == null) {
return;
@ -1139,54 +1139,6 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1139,54 +1139,6 @@ namespace ICSharpCode.NRefactory.CSharp
TextReplaceAction beginBraceAction = null;
TextReplaceAction endBraceAction = null;
switch (braceForcement) {
case BraceForcement.DoNotChange:
//nothing
break;
case BraceForcement.AddBraces:
if (!isBlock) {
AstNode n = node.Parent.GetCSharpNodeBefore(node);
int start = document.GetOffset(n.EndLocation);
string startBrace = "";
switch (braceStyle) {
case BraceStyle.EndOfLineWithoutSpace:
startBrace = "{";
break;
case BraceStyle.BannerStyle:
case BraceStyle.EndOfLine:
startBrace = " {";
break;
case BraceStyle.NextLine:
startBrace = this.options.EolMarker + curIndent.IndentString + "{";
break;
case BraceStyle.NextLineShifted2:
case BraceStyle.NextLineShifted:
curIndent.Push(IndentType.Block);
startBrace = this.options.EolMarker + curIndent.IndentString + "{";
curIndent.Pop();
break;
}
beginBraceAction = AddChange(start, 0, startBrace);
}
break;
case BraceForcement.RemoveBraces:
if (isBlock) {
BlockStatement block = node as BlockStatement;
if (block.Statements.Count() == 1) {
int offset1 = document.GetOffset(node.StartLocation);
int start = SearchWhitespaceStart(offset1);
int offset2 = document.GetOffset(node.EndLocation);
int end = SearchWhitespaceStart(offset2 - 1);
beginBraceAction = AddChange(start, offset1 - start + 1, null);
endBraceAction = AddChange(end + 1, offset2 - end, null);
node = block.FirstChild;
isBlock = false;
}
}
break;
}
if (isBlock) {
BlockStatement block = node as BlockStatement;
if (allowInLine && block.StartLocation.Line == block.EndLocation.Line && block.Statements.Count() <= 1) {
@ -1222,44 +1174,6 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1222,44 +1174,6 @@ namespace ICSharpCode.NRefactory.CSharp
if (pushed) {
curIndent.Pop();
}
switch (braceForcement) {
case BraceForcement.DoNotChange:
break;
case BraceForcement.AddBraces:
if (!isBlock) {
int offset = document.GetOffset(node.EndLocation);
if (!char.IsWhiteSpace(document.GetCharAt(offset))) {
offset++;
}
string startBrace = "";
switch (braceStyle) {
case BraceStyle.DoNotChange:
startBrace = null;
break;
case BraceStyle.EndOfLineWithoutSpace:
startBrace = this.options.EolMarker + curIndent.IndentString + "}";
break;
case BraceStyle.EndOfLine:
startBrace = this.options.EolMarker + curIndent.IndentString + "}";
break;
case BraceStyle.NextLine:
startBrace = this.options.EolMarker + curIndent.IndentString + "}";
break;
case BraceStyle.BannerStyle:
case BraceStyle.NextLineShifted2:
case BraceStyle.NextLineShifted:
curIndent.Push(IndentType.Block);
startBrace = this.options.EolMarker + curIndent.IndentString + "}";
curIndent.Pop ();
break;
}
if (startBrace != null) {
endBraceAction = AddChange(offset, 0, startBrace);
}
}
break;
}
if (beginBraceAction != null && endBraceAction != null) {
beginBraceAction.DependsOn = endBraceAction;
endBraceAction.DependsOn = beginBraceAction;
@ -1430,7 +1344,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1430,7 +1344,7 @@ namespace ICSharpCode.NRefactory.CSharp
ForceSpacesAfter(forStatement.LParToken, policy.SpacesWithinForParentheses);
ForceSpacesBefore(forStatement.RParToken, policy.SpacesWithinForParentheses);
FixEmbeddedStatment(policy.StatementBraceStyle, policy.ForBraceForcement, forStatement.EmbeddedStatement);
FixEmbeddedStatment(policy.StatementBraceStyle, forStatement.EmbeddedStatement);
}
public override void VisitGotoStatement(GotoStatement gotoStatement)
@ -1455,20 +1369,18 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1455,20 +1369,18 @@ namespace ICSharpCode.NRefactory.CSharp
}
if (!ifElseStatement.TrueStatement.IsNull) {
FixEmbeddedStatment(policy.StatementBraceStyle, policy.IfElseBraceForcement, ifElseStatement.IfToken, policy.AllowIfBlockInline, ifElseStatement.TrueStatement);
FixEmbeddedStatment(policy.StatementBraceStyle, ifElseStatement.IfToken, policy.AllowIfBlockInline, ifElseStatement.TrueStatement);
}
if (!ifElseStatement.FalseStatement.IsNull) {
var placeElseOnNewLine = policy.ElseNewLinePlacement;
if (!(ifElseStatement.TrueStatement is BlockStatement) && policy.IfElseBraceForcement != BraceForcement.AddBraces)
if (!(ifElseStatement.TrueStatement is BlockStatement))
placeElseOnNewLine = NewLinePlacement.NewLine;
PlaceOnNewLine(placeElseOnNewLine, ifElseStatement.ElseToken);
var forcement = policy.IfElseBraceForcement;
if (ifElseStatement.FalseStatement is IfElseStatement) {
forcement = BraceForcement.DoNotChange;
PlaceOnNewLine(policy.ElseIfNewLinePlacement, ((IfElseStatement)ifElseStatement.FalseStatement).IfToken);
}
FixEmbeddedStatment(policy.StatementBraceStyle, forcement, ifElseStatement.ElseToken, policy.AllowIfBlockInline, ifElseStatement.FalseStatement, ifElseStatement.FalseStatement is IfElseStatement);
FixEmbeddedStatment(policy.StatementBraceStyle, ifElseStatement.ElseToken, policy.AllowIfBlockInline, ifElseStatement.FalseStatement, ifElseStatement.FalseStatement is IfElseStatement);
}
}
@ -1485,7 +1397,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1485,7 +1397,7 @@ namespace ICSharpCode.NRefactory.CSharp
ForceSpacesAfter(lockStatement.LParToken, policy.SpacesWithinLockParentheses);
ForceSpacesBefore(lockStatement.RParToken, policy.SpacesWithinLockParentheses);
FixEmbeddedStatment(policy.StatementBraceStyle, policy.FixedBraceForcement, lockStatement.EmbeddedStatement);
FixEmbeddedStatment(policy.StatementBraceStyle, lockStatement.EmbeddedStatement);
}
public override void VisitReturnStatement(ReturnStatement returnStatement)
@ -1553,7 +1465,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1553,7 +1465,7 @@ namespace ICSharpCode.NRefactory.CSharp
public override void VisitTryCatchStatement(TryCatchStatement tryCatchStatement)
{
if (!tryCatchStatement.TryBlock.IsNull) {
FixEmbeddedStatment(policy.StatementBraceStyle, BraceForcement.DoNotChange, tryCatchStatement.TryBlock);
FixEmbeddedStatment(policy.StatementBraceStyle, tryCatchStatement.TryBlock);
}
foreach (CatchClause clause in tryCatchStatement.CatchClauses) {
@ -1564,13 +1476,13 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1564,13 +1476,13 @@ namespace ICSharpCode.NRefactory.CSharp
ForceSpacesAfter(clause.LParToken, policy.SpacesWithinCatchParentheses);
ForceSpacesBefore(clause.RParToken, policy.SpacesWithinCatchParentheses);
}
FixEmbeddedStatment(policy.StatementBraceStyle, BraceForcement.DoNotChange, clause.Body);
FixEmbeddedStatment(policy.StatementBraceStyle, clause.Body);
}
if (!tryCatchStatement.FinallyBlock.IsNull) {
PlaceOnNewLine(policy.FinallyNewLinePlacement, tryCatchStatement.FinallyToken);
FixEmbeddedStatment(policy.StatementBraceStyle, BraceForcement.DoNotChange, tryCatchStatement.FinallyBlock);
FixEmbeddedStatment(policy.StatementBraceStyle, tryCatchStatement.FinallyBlock);
}
}
@ -1582,12 +1494,12 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1582,12 +1494,12 @@ namespace ICSharpCode.NRefactory.CSharp
public override void VisitUncheckedStatement(UncheckedStatement uncheckedStatement)
{
FixEmbeddedStatment(policy.StatementBraceStyle, policy.FixedBraceForcement, uncheckedStatement.Body);
FixEmbeddedStatment(policy.StatementBraceStyle, uncheckedStatement.Body);
}
public override void VisitUnsafeStatement(UnsafeStatement unsafeStatement)
{
FixEmbeddedStatment(policy.StatementBraceStyle, BraceForcement.DoNotChange, unsafeStatement.Body);
FixEmbeddedStatment(policy.StatementBraceStyle, unsafeStatement.Body);
}
public override void VisitUsingStatement(UsingStatement usingStatement)
@ -1597,7 +1509,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1597,7 +1509,7 @@ namespace ICSharpCode.NRefactory.CSharp
ForceSpacesAfter(usingStatement.LParToken, policy.SpacesWithinUsingParentheses);
ForceSpacesBefore(usingStatement.RParToken, policy.SpacesWithinUsingParentheses);
FixEmbeddedStatment(policy.StatementBraceStyle, policy.UsingBraceForcement, usingStatement.EmbeddedStatement);
FixEmbeddedStatment(policy.StatementBraceStyle, usingStatement.EmbeddedStatement);
}
public override void VisitVariableDeclarationStatement(VariableDeclarationStatement variableDeclarationStatement)
@ -1625,7 +1537,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1625,7 +1537,7 @@ namespace ICSharpCode.NRefactory.CSharp
public override void VisitDoWhileStatement(DoWhileStatement doWhileStatement)
{
PlaceOnNewLine(policy.WhileNewLinePlacement, doWhileStatement.WhileToken);
FixEmbeddedStatment(policy.StatementBraceStyle, policy.WhileBraceForcement, doWhileStatement.EmbeddedStatement);
FixEmbeddedStatment(policy.StatementBraceStyle, doWhileStatement.EmbeddedStatement);
}
public override void VisitWhileStatement(WhileStatement whileStatement)
@ -1635,7 +1547,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -1635,7 +1547,7 @@ namespace ICSharpCode.NRefactory.CSharp
ForceSpacesAfter(whileStatement.LParToken, policy.SpacesWithinWhileParentheses);
ForceSpacesBefore(whileStatement.RParToken, policy.SpacesWithinWhileParentheses);
FixEmbeddedStatment(policy.StatementBraceStyle, policy.WhileBraceForcement, whileStatement.EmbeddedStatement);
FixEmbeddedStatment(policy.StatementBraceStyle, whileStatement.EmbeddedStatement);
}
public override void VisitYieldBreakStatement(YieldBreakStatement yieldBreakStatement)

40
ICSharpCode.NRefactory.CSharp/Formatter/CSharpFormattingOptions.cs

@ -41,13 +41,6 @@ namespace ICSharpCode.NRefactory.CSharp @@ -41,13 +41,6 @@ namespace ICSharpCode.NRefactory.CSharp
BannerStyle
}
public enum BraceForcement
{
DoNotChange,
RemoveBraces,
AddBraces
}
public enum PropertyFormatting
{
AllowOneLine,
@ -275,40 +268,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -275,40 +268,7 @@ namespace ICSharpCode.NRefactory.CSharp
}
#endregion
#region Force Braces
public BraceForcement IfElseBraceForcement { // tested
get;
set;
}
public BraceForcement ForBraceForcement { // tested
get;
set;
}
public BraceForcement ForEachBraceForcement { // tested
get;
set;
}
public BraceForcement WhileBraceForcement { // tested
get;
set;
}
public BraceForcement UsingBraceForcement { // tested
get;
set;
}
public BraceForcement FixedBraceForcement { // tested
get;
set;
}
#endregion
#region NewLines
public NewLinePlacement ElseNewLinePlacement { // tested
get;

21
ICSharpCode.NRefactory.CSharp/Formatter/FormattingOptionsFactory.cs

@ -184,14 +184,7 @@ namespace ICSharpCode.NRefactory.CSharp @@ -184,14 +184,7 @@ namespace ICSharpCode.NRefactory.CSharp
IndexerArgumentWrapping = Wrapping.DoNotChange,
NewLineAferIndexerOpenBracket = false,
IndexerClosingBracketOnNewLine = false,
IfElseBraceForcement = BraceForcement.DoNotChange,
ForBraceForcement = BraceForcement.DoNotChange,
ForEachBraceForcement = BraceForcement.DoNotChange,
WhileBraceForcement = BraceForcement.DoNotChange,
UsingBraceForcement = BraceForcement.DoNotChange,
FixedBraceForcement = BraceForcement.DoNotChange
IndexerClosingBracketOnNewLine = false
};
}
@ -201,12 +194,6 @@ namespace ICSharpCode.NRefactory.CSharp @@ -201,12 +194,6 @@ namespace ICSharpCode.NRefactory.CSharp
public static CSharpFormattingOptions CreateSharpDevelop()
{
var baseOptions = CreateKRStyle();
baseOptions.IfElseBraceForcement = BraceForcement.AddBraces;
baseOptions.ForBraceForcement = BraceForcement.AddBraces;
baseOptions.ForEachBraceForcement = BraceForcement.AddBraces;
baseOptions.WhileBraceForcement = BraceForcement.AddBraces;
baseOptions.UsingBraceForcement = BraceForcement.AddBraces;
baseOptions.FixedBraceForcement = BraceForcement.AddBraces;
return baseOptions;
}
@ -357,12 +344,6 @@ namespace ICSharpCode.NRefactory.CSharp @@ -357,12 +344,6 @@ namespace ICSharpCode.NRefactory.CSharp
NewLineAferIndexerOpenBracket = false,
IndexerClosingBracketOnNewLine = false,
IfElseBraceForcement = BraceForcement.DoNotChange,
ForBraceForcement = BraceForcement.DoNotChange,
ForEachBraceForcement = BraceForcement.DoNotChange,
WhileBraceForcement = BraceForcement.DoNotChange,
UsingBraceForcement = BraceForcement.DoNotChange,
FixedBraceForcement = BraceForcement.DoNotChange
};
}

393
ICSharpCode.NRefactory.Tests/FormattingTests/TestStatementIndentation.cs

@ -314,36 +314,6 @@ fixed (object* obj = &obj) @@ -314,36 +314,6 @@ fixed (object* obj = &obj)
}");
}
[Test()]
public void TestFixedForcementAdd ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.EndOfLine;
policy.FixedBraceForcement = BraceForcement.AddBraces;
Test (policy, @"class Test
{
Test TestMethod ()
{
fixed (object* obj = &obj) {
}
fixed (object* obj = &obj) ;
}
}",
@"class Test
{
Test TestMethod ()
{
fixed (object* obj = &obj) {
}
fixed (object* obj = &obj) {
;
}
}
}");
}
[Test()]
public void TestForeachIndentation ()
{
@ -577,65 +547,6 @@ using (var o = new MyObj()) { @@ -577,65 +547,6 @@ using (var o = new MyObj()) {
}");
}
[Test()]
public void TestUsingForcementAdd ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.EndOfLine;
policy.UsingBraceForcement = BraceForcement.AddBraces;
Test (policy, @"class Test
{
Test TestMethod ()
{
using (var o = new MyObj()) {
}
using (var o = new MyObj()) ;
}
}",
@"class Test
{
Test TestMethod ()
{
using (var o = new MyObj()) {
}
using (var o = new MyObj()) {
;
}
}
}");
}
[Test()]
public void TestUsingForcementDoNotChange ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.EndOfLine;
policy.UsingBraceForcement = BraceForcement.DoNotChange;
Test (policy, @"class Test
{
Test TestMethod ()
{
using (var o = new MyObj()) {
}
using (var o = new MyObj()) ;
}
}",
@"class Test
{
Test TestMethod ()
{
using (var o = new MyObj()) {
}
using (var o = new MyObj())
;
}
}");
}
[Test()]
public void TestUsingAlignment ()
{
@ -882,109 +793,6 @@ do { @@ -882,109 +793,6 @@ do {
}");
}
[Test()]
public void TestForEachBraceForcementAdd ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.NextLine;
policy.ForEachBraceForcement = BraceForcement.AddBraces;
Test (policy, @"class Test
{
Test TestMethod ()
{
foreach (var obj in col)
{
}
foreach (var obj in col) ;
}
}",
@"class Test
{
Test TestMethod ()
{
foreach (var obj in col)
{
}
foreach (var obj in col)
{
;
}
}
}");
}
[Test()]
public void TestForBraceForcementAdd ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.NextLine;
policy.ForBraceForcement = BraceForcement.AddBraces;
Test (policy, @"class Test
{
Test TestMethod ()
{
for (;;)
{
}
for (;;) ;
}
}",
@"class Test
{
Test TestMethod ()
{
for (;;)
{
}
for (;;)
{
;
}
}
}");
}
[Test()]
[Ignore("Crashes due to overlapping changes")]
public void TestForEachBraceForcementRemove ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.NextLine;
policy.ForEachBraceForcement = BraceForcement.RemoveBraces;
Test (policy, @"class Test
{
Test TestMethod ()
{
foreach (var obj in col)
{
;
;
}
foreach (var obj in col)
{
;
}
}
}",
@"class Test
{
Test TestMethod ()
{
foreach (var obj in col)
{
;
;
}
foreach (var obj in col)
;
}
}");
}
[Test()]
public void TestIfBracketPlacement ()
{
@ -1104,45 +912,6 @@ do { @@ -1104,45 +912,6 @@ do {
}");
}
[Test()]
[Ignore("Crashes due to overlapping changes")]
public void TestIfForcementRemove ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.NextLine;
policy.IfElseBraceForcement = BraceForcement.RemoveBraces;
Test (policy, @"class Test
{
Test TestMethod ()
{
if (true)
{
;
;
}
if (true)
{
;
}
}
}",
@"class Test
{
Test TestMethod ()
{
if (true)
{
;
;
}
if (true)
;
}
}");
}
[Test()]
public void TestIfAlignment ()
{
@ -1177,122 +946,6 @@ if (b) { @@ -1177,122 +946,6 @@ if (b) {
}");
}
[Test()]
public void TestIfForcementAdd ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.EndOfLine;
policy.IfElseBraceForcement = BraceForcement.AddBraces;
Test (policy, @"class Test
{
void TestMethod ()
{
if (true)
Call ();
}
}",
@"class Test
{
void TestMethod ()
{
if (true) {
Call ();
}
}
}");
}
[Test()]
public void TestIfForcementWithComment ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.EndOfLine;
policy.IfElseBraceForcement = BraceForcement.AddBraces;
Test (policy, @"class Test
{
void TestMethod ()
{
if (true) // TestComment
Call ();
}
}",
@"class Test
{
void TestMethod ()
{
if (true) { // TestComment
Call ();
}
}
}");
}
[Test()]
public void TestIfElseForcementAdd ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.EndOfLine;
policy.IfElseBraceForcement = BraceForcement.AddBraces;
Test (policy, @"class Test
{
void TestMethod ()
{
if (true)
Call ();
else
Call2 ();
}
}",
@"class Test
{
void TestMethod ()
{
if (true) {
Call ();
} else {
Call2 ();
}
}
}");
}
[Test()]
public void TestIfElseIFForcementAdd ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.EndOfLine;
policy.IfElseBraceForcement = BraceForcement.AddBraces;
Test (policy, @"class Test
{
void TestMethod ()
{
if (true)
Call ();
else if (false)
Call2 ();
}
}",
@"class Test
{
void TestMethod ()
{
if (true) {
Call ();
} else if (false) {
Call2 ();
}
}
}");
}
[Test()]
public void TestElseOnNewLine()
{
@ -1413,60 +1066,20 @@ if (b) { @@ -1413,60 +1066,20 @@ if (b) {
}");
}
[Test()]
[Ignore("Crashes due to overlapping changes")]
public void TestWhileForcementRemove ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.NextLine;
policy.WhileBraceForcement = BraceForcement.RemoveBraces;
Test (policy, @"class Test
{
Test TestMethod ()
{
while (true)
{
;
;
}
while (true)
{
;
}
}
}",
@"class Test
{
Test TestMethod ()
{
while (true)
{
;
;
}
while (true)
;
}
}");
}
[Test()]
public void TestFixedBracketPlacement ()
{
CSharpFormattingOptions policy = FormattingOptionsFactory.CreateMono ();
policy.StatementBraceStyle = BraceStyle.NextLineShifted;
policy.FixedBraceForcement = BraceForcement.AddBraces;
Test (policy, @"class Test
{
Test TestMethod ()
{
fixed (object* obj = &obj)
fixed (object* obj = &obj){
;
;}
}
}",
@"class Test

Loading…
Cancel
Save