Skip to content

Commit 7520f81

Browse files
committed
Placeholder for setting query parameter examples
1 parent 5cb5f31 commit 7520f81

File tree

1 file changed

+23
-14
lines changed

1 file changed

+23
-14
lines changed

App/Api/Setup/ApiEndpoints.cs

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
1+
using System.Globalization;
12
using System.Net;
23
using Asp.Versioning;
4+
using Microsoft.OpenApi.Any;
5+
using Microsoft.OpenApi.Models;
36
using Services;
47

58
namespace Api.Setup;
69

710
internal static class ApiEndpoints
811
{
9-
// private static readonly OpenApiString ExampleFromDate = new(DateTime.Now.AddMonths(-1).ToString("yyyy-MM-dd", CultureInfo.InvariantCulture));
10-
// private static readonly OpenApiString ExampleToDate = new(DateTime.Now.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture));
12+
private static readonly OpenApiString s_exampleFromDate = new(DateTime.Now.AddMonths(-1).ToString("yyyy-MM-dd", CultureInfo.InvariantCulture));
13+
private static readonly OpenApiString s_exampleToDate = new(DateTime.Now.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture));
1114

1215
public static void ConfigureEndpoints(this WebApplication app)
1316
{
@@ -42,6 +45,12 @@ public static void ConfigureEndpoints(this WebApplication app)
4245
.Produces((int)HttpStatusCode.BadRequest)
4346
.ProducesProblem((int)HttpStatusCode.TooManyRequests)
4447
.ProducesProblem((int)HttpStatusCode.InternalServerError)
48+
.WithOpenApi(operation =>
49+
{
50+
operation.Parameters[0].Example = s_exampleFromDate;
51+
operation.Parameters[^1].Example = s_exampleToDate;
52+
return operation;
53+
})
4554
.WithDescription("Get longest downward trend in days between given dates");
4655

4756
group.MapGet("/highestradingvolume",
@@ -70,6 +79,12 @@ public static void ConfigureEndpoints(this WebApplication app)
7079
.Produces((int)HttpStatusCode.BadRequest)
7180
.ProducesProblem((int)HttpStatusCode.TooManyRequests)
7281
.ProducesProblem((int)HttpStatusCode.InternalServerError)
82+
.WithOpenApi(operation =>
83+
{
84+
operation.Parameters[0].Example = s_exampleFromDate;
85+
operation.Parameters[^1].Example = s_exampleToDate;
86+
return operation;
87+
})
7388
.WithDescription("Get the date with the highest trading volume between given dates");
7489

7590
group.MapGet("/buyandsell",
@@ -98,20 +113,14 @@ public static void ConfigureEndpoints(this WebApplication app)
98113
.Produces((int)HttpStatusCode.BadRequest)
99114
.ProducesProblem((int)HttpStatusCode.TooManyRequests)
100115
.ProducesProblem((int)HttpStatusCode.InternalServerError)
116+
.WithOpenApi(operation =>
117+
{
118+
operation.Parameters[0].Example = s_exampleFromDate;
119+
operation.Parameters[^1].Example = s_exampleToDate;
120+
return operation;
121+
})
101122
.WithDescription("Get pair of dates when it is best to buy and sell between given dates");
102123
}
103-
104-
// private static void ConfigureEndpoint(RouteGroupBuilder group, string route, string description, Delegate handler)
105-
// {
106-
// group.MapGet(route, handler)
107-
// .WithDescription(description)
108-
// .WithOpenApi(operation =>
109-
// {
110-
// operation.Parameters[0].Example = ExampleFromDate;
111-
// operation.Parameters[^1].Example = ExampleToDate;
112-
// return operation;
113-
// });
114-
// }
115124
}
116125

117126
public record LongestDownwardTrendResponse(int Days);

0 commit comments

Comments
 (0)