File tree Expand file tree Collapse file tree
test/Microsoft.OpenApi.Tests/Models Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -230,6 +230,11 @@ public static class OpenApiConstants
230230 /// </summary>
231231 public const string Identifier = "identifier" ;
232232
233+ /// <summary>
234+ /// Field: x-oai-license-identifier
235+ /// </summary>
236+ public const string OaiLicenseIdentifier = "x-oai-license-identifier" ;
237+
233238 /// <summary>
234239 /// Field: Namespace
235240 /// </summary>
Original file line number Diff line number Diff line change @@ -63,6 +63,7 @@ public virtual void SerializeAsV31(IOpenApiWriter writer)
6363 public virtual void SerializeAsV3 ( IOpenApiWriter writer )
6464 {
6565 WriteInternal ( writer , OpenApiSpecVersion . OpenApi3_0 ) ;
66+ writer . WriteProperty ( OpenApiConstants . OaiLicenseIdentifier , Identifier ) ;
6667 writer . WriteEndObject ( ) ;
6768 }
6869
@@ -72,6 +73,7 @@ public virtual void SerializeAsV3(IOpenApiWriter writer)
7273 public virtual void SerializeAsV2 ( IOpenApiWriter writer )
7374 {
7475 WriteInternal ( writer , OpenApiSpecVersion . OpenApi2_0 ) ;
76+ writer . WriteProperty ( OpenApiConstants . OaiLicenseIdentifier , Identifier ) ;
7577 writer . WriteEndObject ( ) ;
7678 }
7779
Original file line number Diff line number Diff line change 11#nullable enable
2+ const Microsoft.OpenApi.OpenApiConstants.OaiLicenseIdentifier = "x-oai-license-identifier" -> string!
Original file line number Diff line number Diff line change @@ -148,6 +148,25 @@ public async Task SerializeLicenseWithIdentifierAsJsonWorks()
148148 Assert . Equal ( expected . MakeLineBreaksEnvironmentNeutral ( ) , actual . MakeLineBreaksEnvironmentNeutral ( ) ) ;
149149 }
150150
151+ [ Theory ]
152+ [ InlineData ( OpenApiSpecVersion . OpenApi3_0 ) ]
153+ [ InlineData ( OpenApiSpecVersion . OpenApi2_0 ) ]
154+ public async Task SerializeLicenseWithIdentifierAsJsonWorksForV3AndV2 ( OpenApiSpecVersion version )
155+ {
156+ // Arrange
157+ var expected =
158+ @"{
159+ ""name"": ""Apache 2.0"",
160+ ""x-oai-license-identifier"": ""Apache-2.0""
161+ }" ;
162+
163+ // Act
164+ var actual = await LicenseWithIdentifier . SerializeAsJsonAsync ( version ) ;
165+
166+ // Assert
167+ Assert . Equal ( expected . MakeLineBreaksEnvironmentNeutral ( ) , actual . MakeLineBreaksEnvironmentNeutral ( ) ) ;
168+ }
169+
151170 [ Fact ]
152171 public async Task SerializeLicenseWithIdentifierAsYamlWorks ( )
153172 {
@@ -161,5 +180,21 @@ public async Task SerializeLicenseWithIdentifierAsYamlWorks()
161180 // Assert
162181 Assert . Equal ( expected . MakeLineBreaksEnvironmentNeutral ( ) , actual . MakeLineBreaksEnvironmentNeutral ( ) ) ;
163182 }
183+
184+ [ Theory ]
185+ [ InlineData ( OpenApiSpecVersion . OpenApi3_0 ) ]
186+ [ InlineData ( OpenApiSpecVersion . OpenApi2_0 ) ]
187+ public async Task SerializeLicenseWithIdentifierAsYamlWorksForV3AndV2 ( OpenApiSpecVersion version )
188+ {
189+ // Arrange
190+ var expected = @"name: Apache 2.0
191+ x-oai-license-identifier: Apache-2.0" ;
192+
193+ // Act
194+ var actual = await LicenseWithIdentifier . SerializeAsYamlAsync ( version ) ;
195+
196+ // Assert
197+ Assert . Equal ( expected . MakeLineBreaksEnvironmentNeutral ( ) , actual . MakeLineBreaksEnvironmentNeutral ( ) ) ;
198+ }
164199 }
165200}
You can’t perform that action at this time.
0 commit comments