in src/EditorFeatures/CSharpTest/Formatting/Indentation/SmartTokenFormatterFormatRangeTests.cs [1870:2298]
void Method()
{
try
{
}
finally
{
}$$";
var expected = @"using System;
class Class
{
void Method()
{
try
{
}
finally
{
}";
await AutoFormatOnCloseBraceAsync(code, expected, SyntaxKind.OpenBraceToken);
}
[WpfFact]
[WorkItem(6645, "https://github.com/dotnet/roslyn/issues/6645")]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task TryStatement5()
{
var code = @"using System;
class Class
{
void Method()
{
try {
}$$
}
}";
var expected = @"using System;
class Class
{
void Method()
{
try
{
}
}
}";
await AutoFormatOnCloseBraceAsync(code, expected, SyntaxKind.OpenBraceToken);
}
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
[WorkItem(537555, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/537555")]
public async Task SingleLine()
{
var code = @"class C { void M() { C.M( );$$ } }";
var expected = @"class C { void M() { C.M(); } }";
await AutoFormatOnSemicolonAsync(code, expected, SyntaxKind.OpenBraceToken);
}
[Fact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task StringLiterals()
{
var code = @"class C { void M() { C.M(""Test {0}$$";
var expected = string.Empty;
await AutoFormatOnMarkerAsync(code, expected, SyntaxKind.StringLiteralToken, SyntaxKind.None);
}
[Fact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task CharLiterals()
{
var code = @"class C { void M() { C.M('}$$";
var expected = string.Empty;
await AutoFormatOnMarkerAsync(code, expected, SyntaxKind.CharacterLiteralToken, SyntaxKind.None);
}
[Fact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task CharLiterals1()
{
var code = @"''';$$";
var expected = string.Empty;
await AutoFormatOnMarkerAsync(code, expected, SyntaxKind.EndOfFileToken, SyntaxKind.None);
}
[Fact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task Comments()
{
var code = @"class C { void M() { // { }$$";
var expected = string.Empty;
await AutoFormatOnMarkerAsync(code, expected, SyntaxKind.OpenBraceToken, SyntaxKind.OpenBraceToken);
}
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task FirstLineInFile()
{
var code = @"using System;$$";
await AutoFormatOnSemicolonAsync(code, "using System;", SyntaxKind.UsingKeyword);
}
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task Label1()
{
var code = @"class C
{
void Method()
{
L : int i = 20;$$
}
}";
var expected = @"class C
{
void Method()
{
L: int i = 20;
}
}";
await AutoFormatOnSemicolonAsync(code, expected, SyntaxKind.OpenBraceToken);
}
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task Label2()
{
var code = @"class C
{
void Method()
{
L :
int i = 20;$$
}
}";
var expected = @"class C
{
void Method()
{
L:
int i = 20;
}
}";
await AutoFormatOnSemicolonAsync(code, expected, SyntaxKind.OpenBraceToken);
}
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task Label3()
{
var code = @"class C
{
void Method()
{
int base = 10;
L :
int i = 20;$$
}
}";
var expected = @"class C
{
void Method()
{
int base = 10;
L:
int i = 20;
}
}";
await AutoFormatOnSemicolonAsync(code, expected, SyntaxKind.SemicolonToken);
}
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task Label4()
{
var code = @"class C
{
void Method()
{
int base = 10;
L:
int i = 20;
int nextLine = 30 ;$$
}
}";
var expected = @"class C
{
void Method()
{
int base = 10;
L:
int i = 20;
int nextLine = 30;
}
}";
await AutoFormatOnSemicolonAsync(code, expected, SyntaxKind.SemicolonToken);
}
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task Label6()
{
var code = @"class C
{
void Method()
{
L:
int i = 20;
int nextLine = 30 ;$$
}
}";
var expected = @"class C
{
void Method()
{
L:
int i = 20;
int nextLine = 30;
}
}";
await AutoFormatOnSemicolonAsync(code, expected, SyntaxKind.OpenBraceToken);
}
[WorkItem(537776, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/537776")]
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task DisappearedTokens()
{
var code = @"class Class1
{
int goo()
return 0;
}$$
}";
var expected = @"class Class1
{
int goo()
return 0;
}
}";
await AutoFormatOnCloseBraceAsync(
code,
expected,
SyntaxKind.ClassKeyword);
}
[WorkItem(537779, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/537779")]
[Fact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task DisappearedTokens2()
{
var code = @"class Class1
{
void Goo()
{
Object o=new Object);$$
}
}";
var expected = @"class Class1
{
void Goo()
{
Object o=new Object);
}
}";
await AutoFormatOnSemicolonAsync(
code,
expected,
SyntaxKind.SemicolonToken);
}
[WorkItem(537793, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/537793")]
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task Delegate1()
{
var code = @"delegate void MyDelegate(int a,int b);$$";
var expected = @"delegate void MyDelegate(int a, int b);";
await AutoFormatOnSemicolonAsync(
code,
expected,
SyntaxKind.DelegateKeyword);
}
[WorkItem(537827, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/537827")]
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task DoubleInitializer()
{
var code = @"class C
{
void Method()
{
int[,] a ={{ 1 , 1 }$$
}
}";
var expected = @"class C
{
void Method()
{
int[,] a ={{ 1 , 1 }
}
}";
await AutoFormatOnCloseBraceAsync(
code,
expected,
SyntaxKind.OpenBraceToken);
}
[WorkItem(537825, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/537825")]
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task MissingToken1()
{
var code = @"public class Class1
{
int a = 1}$$;
}";
var expected = @"public class Class1
{
int a = 1};
}";
await AutoFormatOnCloseBraceAsync(
code,
expected,
SyntaxKind.PublicKeyword);
}
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task ArrayInitializer1()
{
var code = @"public class Class1
{
var a = new []
{
1, 2, 3, 4
}$$
}";
var expected = @"public class Class1
{
var a = new[]
{
1, 2, 3, 4
}
}";
await AutoFormatOnCloseBraceAsync(
code,
expected,
SyntaxKind.NewKeyword);
}
[WpfFact]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task ArrayInitializer2()
{
var code = @"public class Class1
{
var a = new []
{
1, 2, 3, 4
} ;$$
}";
var expected = @"public class Class1
{
var a = new[]
{
1, 2, 3, 4
};
}";
await AutoFormatOnSemicolonAsync(
code,
expected,
SyntaxKind.OpenBraceToken);
}
[WpfFact]
[WorkItem(537825, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/537825")]
[Trait(Traits.Feature, Traits.Features.SmartTokenFormatting)]
public async Task MalformedCode()
{
var code = @"namespace ClassLibrary1
{
public class Class1
{
int a}$$;
}
}";
var expected = @"namespace ClassLibrary1
{
public class Class1
{
int a};
}
}";
await AutoFormatOnCloseBraceAsync(
code,
expected,
SyntaxKind.OpenBraceToken);
}