Skip to content

Commit a79aae8

Browse files
committed
Merge remote-tracking branch 'origin/vnext' into mk/feature/publish-hidi-as-exe
2 parents da6a4d1 + de4ea22 commit a79aae8

File tree

4 files changed

+20
-13
lines changed

4 files changed

+20
-13
lines changed

src/Microsoft.OpenApi.Hidi/Microsoft.OpenApi.Hidi.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@
1515
<PackageId>Microsoft.OpenApi.Hidi</PackageId>
1616
<ToolCommandName>hidi</ToolCommandName>
1717
<PackageOutputPath>./../../artifacts</PackageOutputPath>
18-
<Version>0.5.0-preview4</Version>
18+
<Version>0.6.0-preview1</Version>
1919
<Description>OpenAPI.NET CLI tool for slicing OpenAPI documents</Description>
2020
<Copyright>© Microsoft Corporation. All rights reserved.</Copyright>
2121
<PackageTags>OpenAPI .NET</PackageTags>
2222
<RepositoryUrl>https://github.com/Microsoft/OpenAPI.NET</RepositoryUrl>
2323
<PackageReleaseNotes>
24-
- Publish symbols.
24+
- Upgrades Microsoft.OpenApi.OData to 1.0.10-preview1
2525
</PackageReleaseNotes>
2626
<AssemblyName>Microsoft.OpenApi.Hidi</AssemblyName>
2727
<RootNamespace>Microsoft.OpenApi.Hidi</RootNamespace>
@@ -37,7 +37,7 @@
3737
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="6.0.0" />
3838
<PackageReference Include="System.CommandLine" Version="2.0.0-beta2.21617.1" />
3939
<PackageReference Include="Microsoft.OData.Edm" Version="7.10.0" />
40-
<PackageReference Include="Microsoft.OpenApi.OData" Version="1.0.9" />
40+
<PackageReference Include="Microsoft.OpenApi.OData" Version="1.0.10-preview1" />
4141
</ItemGroup>
4242

4343
<ItemGroup>

src/Microsoft.OpenApi.Hidi/OpenApiService.cs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ string filterbycollection
9292
version ??= OpenApiSpecVersion.OpenApi3_0;
9393

9494
stream = await GetStream(csdl, logger);
95-
document = ConvertCsdlToOpenApi(stream);
95+
document = await ConvertCsdlToOpenApi(stream);
9696
}
9797
else
9898
{
@@ -198,16 +198,20 @@ string filterbycollection
198198
/// </summary>
199199
/// <param name="csdl">The CSDL stream.</param>
200200
/// <returns>An OpenAPI document.</returns>
201-
public static OpenApiDocument ConvertCsdlToOpenApi(Stream csdl)
201+
public static async Task<OpenApiDocument> ConvertCsdlToOpenApi(Stream csdl)
202202
{
203203
using var reader = new StreamReader(csdl);
204-
var csdlText = reader.ReadToEndAsync().GetAwaiter().GetResult();
204+
var csdlText = await reader.ReadToEndAsync();
205205
var edmModel = CsdlReader.Parse(XElement.Parse(csdlText).CreateReader());
206206

207207
var settings = new OpenApiConvertSettings()
208208
{
209+
AddSingleQuotesForStringParameters = true,
210+
AddEnumDescriptionExtension = true,
211+
DeclarePathParametersOnPathItem = true,
209212
EnableKeyAsSegment = true,
210213
EnableOperationId = true,
214+
ErrorResponsesAsDefault = false,
211215
PrefixEntityTypeNameBeforeKey = true,
212216
TagDepth = 2,
213217
EnablePagination = true,

test/Microsoft.OpenApi.Tests/PublicApi/PublicApi.approved.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -358,6 +358,7 @@ namespace Microsoft.OpenApi.Models
358358
public const string AuthorizationUrl = "authorizationUrl";
359359
public const string BasePath = "basePath";
360360
public const string Basic = "basic";
361+
public const string Bearer = "bearer";
361362
public const string BearerFormat = "bearerFormat";
362363
public const string BodyName = "x-bodyName";
363364
public const string Callbacks = "callbacks";
@@ -400,6 +401,7 @@ namespace Microsoft.OpenApi.Models
400401
public const string In = "in";
401402
public const string Info = "info";
402403
public const string Items = "items";
404+
public const string Jwt = "JWT";
403405
public const string License = "license";
404406
public const string Links = "links";
405407
public const string Mapping = "mapping";
@@ -1206,7 +1208,7 @@ namespace Microsoft.OpenApi.Validations.Rules
12061208
public static Microsoft.OpenApi.Validations.ValidationRule<Microsoft.OpenApi.Models.OpenApiResponses> ResponsesMustBeIdentifiedByDefaultOrStatusCode { get; }
12071209
public static Microsoft.OpenApi.Validations.ValidationRule<Microsoft.OpenApi.Models.OpenApiResponses> ResponsesMustContainAtLeastOneResponse { get; }
12081210
}
1209-
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.All, AllowMultiple=false, Inherited=false)]
1211+
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=false)]
12101212
public class OpenApiRuleAttribute : System.Attribute
12111213
{
12121214
public OpenApiRuleAttribute() { }

test/Microsoft.OpenApi.Tests/Services/OpenApiServiceTests.cs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
using System;
55
using System.IO;
6+
using System.Threading.Tasks;
67
using Microsoft.OpenApi.Hidi;
78
using Microsoft.OpenApi.Services;
89
using Xunit;
@@ -12,36 +13,36 @@ namespace Microsoft.OpenApi.Tests.Services
1213
public class OpenApiServiceTests
1314
{
1415
[Fact]
15-
public void ReturnConvertedCSDLFile()
16+
public async Task ReturnConvertedCSDLFile()
1617
{
1718
// Arrange
1819
var filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "UtilityFiles\\Todo.xml");
1920
var fileInput = new FileInfo(filePath);
2021
var csdlStream = fileInput.OpenRead();
2122

2223
// Act
23-
var openApiDoc = OpenApiService.ConvertCsdlToOpenApi(csdlStream);
24-
var expectedPathCount = 5;
24+
var openApiDoc = await OpenApiService.ConvertCsdlToOpenApi(csdlStream);
25+
var expectedPathCount = 6;
2526

2627
// Assert
2728
Assert.NotNull(openApiDoc);
2829
Assert.NotEmpty(openApiDoc.Paths);
29-
Assert.Equal(openApiDoc.Paths.Count, expectedPathCount);
30+
Assert.Equal(expectedPathCount, openApiDoc.Paths.Count);
3031
}
3132

3233
[Theory]
3334
[InlineData("Todos.Todo.UpdateTodo",null, 1)]
3435
[InlineData("Todos.Todo.ListTodo",null, 1)]
3536
[InlineData(null, "Todos.Todo", 4)]
36-
public void ReturnFilteredOpenApiDocBasedOnOperationIdsAndInputCsdlDocument(string operationIds, string tags, int expectedPathCount)
37+
public async Task ReturnFilteredOpenApiDocBasedOnOperationIdsAndInputCsdlDocument(string operationIds, string tags, int expectedPathCount)
3738
{
3839
// Arrange
3940
var filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "UtilityFiles\\Todo.xml");
4041
var fileInput = new FileInfo(filePath);
4142
var csdlStream = fileInput.OpenRead();
4243

4344
// Act
44-
var openApiDoc = OpenApiService.ConvertCsdlToOpenApi(csdlStream);
45+
var openApiDoc = await OpenApiService.ConvertCsdlToOpenApi(csdlStream);
4546
var predicate = OpenApiFilterService.CreatePredicate(operationIds, tags);
4647
var subsetOpenApiDocument = OpenApiFilterService.CreateFilteredDocument(openApiDoc, predicate);
4748

0 commit comments

Comments
 (0)