Skip to content

Commit ef6c76e

Browse files
committedApr 16, 2025·
chore: add serialization versions for better coverage
1 parent 5389c78 commit ef6c76e

File tree

1 file changed

+17
-3
lines changed

1 file changed

+17
-3
lines changed
 

‎test/Microsoft.OpenApi.Readers.Tests/V31Tests/OpenApiDocumentSerializationTests .cs

+17-3
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,11 @@ public class OpenApiDocumentSerializationTests
1616
{
1717
private const string SampleFolderPath = "V31Tests/Samples/OpenApiDocument/";
1818

19-
[Fact]
20-
public async Task Serialize_DoesNotMutateDom()
19+
[Theory]
20+
[InlineData(OpenApiSpecVersion.OpenApi3_1)]
21+
[InlineData(OpenApiSpecVersion.OpenApi3_0)]
22+
[InlineData(OpenApiSpecVersion.OpenApi2_0)]
23+
public async Task Serialize_DoesNotMutateDom(OpenApiSpecVersion version)
2124
{
2225
// Arrange
2326
var filePath = Path.Combine(SampleFolderPath, "docWith31properties.json");
@@ -37,7 +40,18 @@ public async Task Serialize_DoesNotMutateDom()
3740
// Serialize using native OpenAPI writer
3841
var jsonWriter = new StringWriter();
3942
var openApiWriter = new OpenApiJsonWriter(jsonWriter);
40-
doc.SerializeAsV31(openApiWriter);
43+
switch (version)
44+
{
45+
case OpenApiSpecVersion.OpenApi3_1:
46+
doc.SerializeAsV31(openApiWriter);
47+
break;
48+
case OpenApiSpecVersion.OpenApi3_0:
49+
doc.SerializeAsV3(openApiWriter);
50+
break;
51+
default:
52+
doc.SerializeAsV2(openApiWriter);
53+
break;
54+
}
4155

4256
// Serialize again with STJ after native writer serialization
4357
var finalSerialized = JsonSerializer.Serialize(doc, options);

0 commit comments

Comments
 (0)
Please sign in to comment.