/
githubmirror
/
roslyn
Обзор
Документация
Войти
/
githubmirror
/
roslyn
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/Workspaces/CoreTest/FormattingTests.cs
81 строка
3 KB
Cyrus Najmabadi
Cleanup test methods
24 июл 2025, 11:15
24 июл 2025, 11:15
9b3e554
Код
Авторство
О чём код?
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. #nullable disable using System.Threading; using Microsoft.CodeAnalysis.CSharp.Formatting; using Microsoft.CodeAnalysis.Formatting; using Microsoft.CodeAnalysis.Test.Utilities; using Microsoft.CodeAnalysis.VisualBasic.Formatting; using Roslyn.Test.Utilities; using Xunit; using CS = Microsoft.CodeAnalysis.CSharp; using VB = Microsoft.CodeAnalysis.VisualBasic; namespace Microsoft.CodeAnalysis.UnitTests; [UseExportProvider] [Trait(Traits.Feature, Traits.Features.Formatting)] public sealed partial class FormattingTests : TestBase { [Fact] public void TestCSharpFormatting() => AssertFormatCSharp(@"public class C { public int X; }", @"public class C{public int X;}"); [Fact] public void TestCSharpDefaultRules() { using var workspace = new AdhocWorkspace(); var service = workspace.Services.GetLanguageServices(LanguageNames.CSharp).GetService<ISyntaxFormattingService>(); var rules = service.GetDefaultFormattingRules(); Assert.NotEmpty(rules); } [Fact] public void TestVisualBasicFormatting() => AssertFormatVB(""" Public Class C Public X As Integer End Class """, """ Public Class C Public X As Integer End Class """); [Fact] public void TestVisualBasicDefaultFormattingRules() { using var workspace = new AdhocWorkspace(); var service = workspace.Services.GetLanguageServices(LanguageNames.VisualBasic).GetService<ISyntaxFormattingService>(); var rules = service.GetDefaultFormattingRules(); Assert.NotEmpty(rules); } private static void AssertFormatCSharp(string expected, string input) { var tree = CS.SyntaxFactory.ParseSyntaxTree(input); AssertFormat(expected, tree, CSharpSyntaxFormattingOptions.Default); } private static void AssertFormatVB(string expected, string input) { var tree = VB.SyntaxFactory.ParseSyntaxTree(input); AssertFormat(expected, tree, VisualBasicSyntaxFormattingOptions.Default); } private static void AssertFormat(string expected, SyntaxTree tree, SyntaxFormattingOptions options) { using var workspace = new AdhocWorkspace(); var formattedRoot = Formatter.Format(tree.GetRoot(), workspace.Services.SolutionServices, options, CancellationToken.None); var actualFormattedText = formattedRoot.ToFullString(); Assert.Equal(expected, actualFormattedText); } }