public void WriteNewAttribute(AttributeData attribute, string expected) { var output = new CodeStringBuilder(); CSharpServiceEndpointBinderBuilder.WriteNewAttribute(output, attribute); output.AsStringBuilder().ToString().ShouldBe(expected); }
private static IEnumerable <TestCaseData> GetWriteNewAttributeCases() { var type = typeof(WriteNewAttributeCases); var symbol = Compilation.GetTypeByMetadataName(type); foreach (var method in SyntaxTools.GetInstanceMethods(symbol)) { var attributes = CSharpServiceEndpointBinderBuilder.FilterAttributes(method.GetAttributes()).ToList(); attributes.Count.ShouldBe(1); var expected = (string)type .GetMethod(method.Name, BindingFlags.Instance | BindingFlags.Public | BindingFlags.DeclaredOnly) ?.Invoke(new WriteNewAttributeCases(), Array.Empty <object>()) !; yield return(new TestCaseData(attributes[0], expected) { TestName = "WriteAttribute." + method.Name }); } }