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 @@ -235,6 +235,11 @@ public static class OpenApiConstants
235235 /// </summary>
236236 public const string Identifier = "identifier" ;
237237
238+ /// <summary>
239+ /// Field: x-oai-license-identifier
240+ /// </summary>
241+ public const string OaiLicenseIdentifier = "x-oai-license-identifier" ;
242+
238243 /// <summary>
239244 /// Field: Namespace
240245 /// </summary>
Original file line number Diff line number Diff line change @@ -73,6 +73,7 @@ public virtual void SerializeAsV31(IOpenApiWriter writer)
7373 public virtual void SerializeAsV3 ( IOpenApiWriter writer )
7474 {
7575 WriteInternal ( writer , OpenApiSpecVersion . OpenApi3_0 ) ;
76+ writer . WriteProperty ( OpenApiConstants . OaiLicenseIdentifier , Identifier ) ;
7677 writer . WriteEndObject ( ) ;
7778 }
7879
@@ -82,6 +83,7 @@ public virtual void SerializeAsV3(IOpenApiWriter writer)
8283 public virtual void SerializeAsV2 ( IOpenApiWriter writer )
8384 {
8485 WriteInternal ( writer , OpenApiSpecVersion . OpenApi2_0 ) ;
86+ writer . WriteProperty ( OpenApiConstants . OaiLicenseIdentifier , Identifier ) ;
8587 writer . WriteEndObject ( ) ;
8688 }
8789
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