Skip to content

Commit 1988498

Browse files
authored
Update tests to ensure apps are up and running (#278)
1 parent 81c8c6e commit 1988498

File tree

11 files changed

+63
-22
lines changed

11 files changed

+63
-22
lines changed

Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<ImplicitUsings>enable</ImplicitUsings>
88
<Nullable>enable</Nullable>
99

10-
<AspireVersion>8.*</AspireVersion>
10+
<AspireVersion>8.2.0</AspireVersion>
1111
<AzureOpenAIVersion>2.*-*</AzureOpenAIVersion>
1212
<AspNetCoreVersion>8.*</AspNetCoreVersion>
1313
<MicrosoftExtensionsVersion>8.*</MicrosoftExtensionsVersion>

test/AzureOpenAIProxy.AppHost.Tests/ApiApp/Endpoints/AdminCreateEventsOpenApiTests.cs

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,19 @@
11
using System.Text.Json;
2-
using System.Net;
32

43
using AzureOpenAIProxy.AppHost.Tests.Fixtures;
54

65
using FluentAssertions;
76

8-
using System.Text;
9-
107
namespace AzureOpenAIProxy.AppHost.Tests.ApiApp.Endpoints;
118

129
public class AdminCreateEventsOpenApiTests(AspireAppHostFixture host) : IClassFixture<AspireAppHostFixture>
13-
{
10+
{
1411
[Fact]
1512
public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Path()
1613
{
1714
// Arrange
1815
using var httpClient = host.App!.CreateHttpClient("apiapp");
16+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
1917

2018
// Act
2119
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -32,6 +30,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Ver
3230
{
3331
// Arrange
3432
using var httpClient = host.App!.CreateHttpClient("apiapp");
33+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
3534

3635
// Act
3736
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -50,6 +49,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Tag
5049
{
5150
// Arrange
5251
using var httpClient = host.App!.CreateHttpClient("apiapp");
52+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
5353

5454
// Act
5555
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -72,6 +72,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Val
7272
{
7373
// Arrange
7474
using var httpClient = host.App!.CreateHttpClient("apiapp");
75+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
7576

7677
// Act
7778
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -92,6 +93,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Obj
9293
{
9394
// Arrange
9495
using var httpClient = host.App!.CreateHttpClient("apiapp");
96+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
9597

9698
// Act
9799
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -105,7 +107,6 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Obj
105107
result.ValueKind.Should().Be(JsonValueKind.Object);
106108
}
107109

108-
109110
[Theory]
110111
[InlineData("200")]
111112
[InlineData("400")]
@@ -115,6 +116,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Res
115116
{
116117
// Arrange
117118
using var httpClient = host.App!.CreateHttpClient("apiapp");
119+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
118120

119121
// Act
120122
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -134,6 +136,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Sch
134136
{
135137
// Arrange
136138
using var httpClient = host.App!.CreateHttpClient("apiapp");
139+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
137140

138141
// Act
139142
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -150,6 +153,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Mod
150153
{
151154
// Arrange
152155
using var httpClient = host.App!.CreateHttpClient("apiapp");
156+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
153157

154158
// Act
155159
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");

test/AzureOpenAIProxy.AppHost.Tests/ApiApp/Endpoints/AdminGetEventDetailsOpenApiTests.cs

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Pat
1515
{
1616
// Arrange
1717
using var httpClient = host.App!.CreateHttpClient("apiapp");
18+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
1819

1920
// Act
2021
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -31,6 +32,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Ver
3132
{
3233
// Arrange
3334
using var httpClient = host.App!.CreateHttpClient("apiapp");
35+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
3436

3537
// Act
3638
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -49,6 +51,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Tag
4951
{
5052
// Arrange
5153
using var httpClient = host.App!.CreateHttpClient("apiapp");
54+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
5255

5356
// Act
5457
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -71,6 +74,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Val
7174
{
7275
// Arrange
7376
using var httpClient = host.App!.CreateHttpClient("apiapp");
77+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
7478

7579
// Act
7680
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -90,6 +94,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Arr
9094
{
9195
// Arrange
9296
using var httpClient = host.App!.CreateHttpClient("apiapp");
97+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
9398

9499
// Act
95100
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -109,6 +114,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Pat
109114
{
110115
// Arrange
111116
using var httpClient = host.App!.CreateHttpClient("apiapp");
117+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
112118

113119
// Act
114120
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -131,6 +137,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Obj
131137
{
132138
// Arrange
133139
using var httpClient = host.App!.CreateHttpClient("apiapp");
140+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
134141

135142
// Act
136143
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -152,6 +159,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Res
152159
{
153160
// Arrange
154161
using var httpClient = host.App!.CreateHttpClient("apiapp");
162+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
155163

156164
// Act
157165
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -189,6 +197,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Sch
189197
{
190198
// Arrange
191199
using var httpClient = host.App!.CreateHttpClient("apiapp");
200+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
192201

193202
// Act
194203
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -205,6 +214,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Mod
205214
{
206215
// Arrange
207216
using var httpClient = host.App!.CreateHttpClient("apiapp");
217+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
208218

209219
// Act
210220
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -219,11 +229,12 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Mod
219229

220230
[Theory]
221231
[MemberData(nameof(AttributeData))]
222-
public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Required
223-
(string attribute, bool isRequired, string type)
232+
public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Required(string attribute, bool isRequired, string type)
224233
{
225234
// Arrange
226235
using var httpClient = host.App!.CreateHttpClient("apiapp");
236+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
237+
227238
var isReq = isRequired;
228239
var typeStr = type;
229240

@@ -242,11 +253,12 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Req
242253

243254
[Theory]
244255
[MemberData(nameof(AttributeData))]
245-
public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Property
246-
(string attribute, bool isRequired, string type)
256+
public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Property(string attribute, bool isRequired, string type)
247257
{
248258
// Arrange
249259
using var httpClient = host.App!.CreateHttpClient("apiapp");
260+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
261+
250262
var isReq = isRequired;
251263
var typeStr = type;
252264

@@ -265,11 +277,12 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Pro
265277

266278
[Theory]
267279
[MemberData(nameof(AttributeData))]
268-
public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Type
269-
(string attribute, bool isRequired, string type)
280+
public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Type(string attribute, bool isRequired, string type)
270281
{
271282
// Arrange
272283
using var httpClient = host.App!.CreateHttpClient("apiapp");
284+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
285+
273286
var isReq = isRequired;
274287
var typeStr = type;
275288

test/AzureOpenAIProxy.AppHost.Tests/ApiApp/Endpoints/AdminGetEventsOpenApiTests.cs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44

55
using FluentAssertions;
66

7-
using IdentityModel.Client;
8-
97
namespace AzureOpenAIProxy.AppHost.Tests.ApiApp.Endpoints;
108

119
public class AdminGetEventsOpenApiTests(AspireAppHostFixture host) : IClassFixture<AspireAppHostFixture>
@@ -16,6 +14,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Pat
1614
{
1715
// Arrange
1816
using var httpClient = host.App!.CreateHttpClient("apiapp");
17+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
1918

2019
// Act
2120
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -32,6 +31,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Ver
3231
{
3332
// Arrange
3433
using var httpClient = host.App!.CreateHttpClient("apiapp");
34+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
3535

3636
// Act
3737
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -50,6 +50,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Tag
5050
{
5151
// Arrange
5252
using var httpClient = host.App!.CreateHttpClient("apiapp");
53+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
5354

5455
// Act
5556
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -72,6 +73,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Val
7273
{
7374
// Arrange
7475
using var httpClient = host.App!.CreateHttpClient("apiapp");
76+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
7577

7678
// Act
7779
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -91,6 +93,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Obj
9193
{
9294
// Arrange
9395
using var httpClient = host.App!.CreateHttpClient("apiapp");
96+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
9497

9598
// Act
9699
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -112,6 +115,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Res
112115
{
113116
// Arrange
114117
using var httpClient = host.App!.CreateHttpClient("apiapp");
118+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
115119

116120
// Act
117121
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");

test/AzureOpenAIProxy.AppHost.Tests/ApiApp/Endpoints/AdminUpdateEventDetailsOpenApiTests.cs

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
using System.Text.Json;
22

3-
using FluentAssertions;
4-
53
using AzureOpenAIProxy.AppHost.Tests.Fixtures;
64

5+
using FluentAssertions;
6+
77
namespace AzureOpenAIProxy.AppHost.Tests.ApiApp.Endpoints;
88

99
public class AdminUpdateEventDetailsOpenApiTests(AspireAppHostFixture host) : IClassFixture<AspireAppHostFixture>
@@ -13,6 +13,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Pat
1313
{
1414
// Arrange
1515
using var httpClient = host.App!.CreateHttpClient("apiapp");
16+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
1617

1718
// Act
1819
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -29,6 +30,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Ver
2930
{
3031
// Arrange
3132
using var httpClient = host.App!.CreateHttpClient("apiapp");
33+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
3234

3335
// Act
3436
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -47,6 +49,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Tag
4749
{
4850
// Arrange
4951
using var httpClient = host.App!.CreateHttpClient("apiapp");
52+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
5053

5154
// Act
5255
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -69,6 +72,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Val
6972
{
7073
// Arrange
7174
using var httpClient = host.App!.CreateHttpClient("apiapp");
75+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
7276

7377
// Act
7478
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -88,6 +92,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Arr
8892
{
8993
// Arrange
9094
using var httpClient = host.App!.CreateHttpClient("apiapp");
95+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
9196

9297
// Act
9398
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -107,6 +112,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Pat
107112
{
108113
// Arrange
109114
using var httpClient = host.App!.CreateHttpClient("apiapp");
115+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
110116

111117
// Act
112118
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -130,6 +136,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Obj
130136
{
131137
// Arrange
132138
using var httpClient = host.App!.CreateHttpClient("apiapp");
139+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
133140

134141
// Act
135142
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -143,7 +150,6 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Obj
143150
result.ValueKind.Should().Be(JsonValueKind.Object);
144151
}
145152

146-
147153
[Theory]
148154
[InlineData("200")]
149155
[InlineData("401")]
@@ -153,6 +159,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Res
153159
{
154160
// Arrange
155161
using var httpClient = host.App!.CreateHttpClient("apiapp");
162+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
156163

157164
// Act
158165
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -172,6 +179,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Sch
172179
{
173180
// Arrange
174181
using var httpClient = host.App!.CreateHttpClient("apiapp");
182+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
175183

176184
// Act
177185
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");
@@ -188,6 +196,7 @@ public async Task Given_Resource_When_Invoked_Endpoint_Then_It_Should_Return_Mod
188196
{
189197
// Arrange
190198
using var httpClient = host.App!.CreateHttpClient("apiapp");
199+
await host.ResourceNotificationService.WaitForResourceAsync("apiapp", KnownResourceStates.Running).WaitAsync(TimeSpan.FromSeconds(30));
191200

192201
// Act
193202
var json = await httpClient.GetStringAsync("/swagger/v1.0.0/swagger.json");

0 commit comments

Comments
 (0)