public async Task TestPreferExpressionBodies() { await new VerifyCS.Test { TestCode = @" using System; [||]class C : IComparable<C> { public int CompareTo(C c) => 0; }", FixedCode = @" using System; class C : IComparable<C> { public int CompareTo(C c) => 0; public static bool operator <(C left, C right) => left.CompareTo(right) < 0; public static bool operator >(C left, C right) => left.CompareTo(right) > 0; public static bool operator <=(C left, C right) => left.CompareTo(right) <= 0; public static bool operator >=(C left, C right) => left.CompareTo(right) >= 0; }", EditorConfig = CodeFixVerifierHelper.GetEditorConfigText( new OptionsCollection(LanguageNames.CSharp) { { CSharpCodeStyleOptions.PreferExpressionBodiedOperators, CSharpCodeStyleOptions.WhenPossibleWithSuggestionEnforcement }, }), }.RunAsync(); }
private static async Task TestInRegularAndScript1Async( string[] initialMarkup, string[] expectedMarkup, int index = 0, TestParameters?parameters = null, List <DiagnosticResult> fixedExpectedDiagnostics = null) { var test = new VerifyCS.Test { CodeActionIndex = index, }; foreach (var source in initialMarkup) { test.TestState.Sources.Add(source); } foreach (var source in expectedMarkup) { test.FixedState.Sources.Add(source); } if (parameters?.parseOptions != null) { test.LanguageVersion = ((CSharpParseOptions)parameters.Value.parseOptions).LanguageVersion; } if (parameters?.options != null) { test.EditorConfig = CodeFixVerifierHelper.GetEditorConfigText(parameters.Value.options); } foreach (var diagnostic in fixedExpectedDiagnostics ?? new List <DiagnosticResult>()) { test.FixedState.ExpectedDiagnostics.Add(diagnostic); } await test.RunAsync(); }