public void WriteStringListAsYamlShouldMatchExpected(string[] stringValues, string expectedYaml) { // Arrange var outputString = new StringWriter(CultureInfo.InvariantCulture); var writer = new OpenApiYamlWriter(outputString); // Act writer.WriteStartArray(); foreach (var stringValue in stringValues) { writer.WriteValue(stringValue); } writer.WriteEndArray(); writer.Flush(); var actualYaml = outputString.GetStringBuilder() .ToString() .MakeLineBreaksEnvironmentNeutral(); expectedYaml = expectedYaml.MakeLineBreaksEnvironmentNeutral(); // Assert actualYaml.Should().Be(expectedYaml); }
private static string Write(Action <OpenApiYamlWriter> action) { MemoryStream stream = new MemoryStream(); OpenApiYamlWriter writer = new OpenApiYamlWriter(new StreamWriter(stream)); action(writer); writer.Flush(); stream.Position = 0; return(new StreamReader(stream).ReadToEnd()); }
private static OpenApiDocument Clone(OpenApiDocument subsetOpenApiDocument) { var stream = new MemoryStream(); var writer = new OpenApiYamlWriter(new StreamWriter(stream)); subsetOpenApiDocument.SerializeAsV3(writer); writer.Flush(); stream.Position = 0; var reader = new OpenApiStreamReader(); return(reader.Read(stream, out OpenApiDiagnostic diag)); }
public void SerializeBasicTagAsV2YamlWithoutReferenceWorks() { // Arrange var outputStringWriter = new StringWriter(); var writer = new OpenApiYamlWriter(outputStringWriter); var expected = "{ }"; // Act BasicTag.SerializeAsV2WithoutReference(writer); writer.Flush(); var actual = outputStringWriter.GetStringBuilder().ToString(); // Assert actual = actual.MakeLineBreaksEnvironmentNeutral(); expected = expected.MakeLineBreaksEnvironmentNeutral(); actual.Should().Be(expected); }
public void SerializeAdvancedTagAsV3YamlWorks() { // Arrange var outputStringWriter = new StringWriter(); var writer = new OpenApiYamlWriter(outputStringWriter); var expected = @" pet"; // Act AdvancedTag.SerializeAsV3(writer); writer.Flush(); var actual = outputStringWriter.GetStringBuilder().ToString(); // Assert actual = actual.MakeLineBreaksEnvironmentNeutral(); expected = expected.MakeLineBreaksEnvironmentNeutral(); actual.Should().Be(expected); }
public void SerializeAdvancedTagAsV2YamlWithoutReferenceWorks() { // Arrange var outputStringWriter = new StringWriter(); var writer = new OpenApiYamlWriter(outputStringWriter); var expected = @"name: pet description: Pets operations externalDocs: description: Find more info here url: https://example.com x-tag-extension: "; // Act AdvancedTag.SerializeAsV2WithoutReference(writer); writer.Flush(); var actual = outputStringWriter.GetStringBuilder().ToString(); // Assert actual = actual.MakeLineBreaksEnvironmentNeutral(); expected = expected.MakeLineBreaksEnvironmentNeutral(); actual.Should().Be(expected); }