Skip to content

Commit 1f26b90

Browse files
committed
Update Event Subscriptions in tests to use new OnXYZ methods
1 parent 74ce026 commit 1f26b90

File tree

5 files changed

+171
-189
lines changed

5 files changed

+171
-189
lines changed

tests/Aspire.Hosting.Tests/Eventing/DistributedApplicationBuilderEventingTests.cs

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -177,15 +177,14 @@ public async Task ResourceEventsForContainersFireForSpecificResources()
177177
var beforeResourceStartedTcs = new TaskCompletionSource(TaskCreationOptions.RunContinuationsAsynchronously);
178178

179179
using var builder = TestDistributedApplicationBuilder.Create();
180-
var redis = builder.AddRedis("redis");
181-
182-
builder.Eventing.Subscribe<BeforeResourceStartedEvent>(redis.Resource, (e, ct) =>
183-
{
184-
Assert.NotNull(e.Services);
185-
Assert.NotNull(e.Resource);
186-
beforeResourceStartedTcs.TrySetResult();
187-
return Task.CompletedTask;
188-
});
180+
var redis = builder.AddRedis("redis")
181+
.OnBeforeResourceStarted((_, e, _) =>
182+
{
183+
Assert.NotNull(e.Services);
184+
Assert.NotNull(e.Resource);
185+
beforeResourceStartedTcs.TrySetResult();
186+
return Task.CompletedTask;
187+
});
189188

190189
using var app = builder.Build();
191190
await app.StartAsync().DefaultTimeout(TestConstants.DefaultOrchestratorTestTimeout);

tests/Aspire.Hosting.Tests/Health/ResourceHealthCheckServiceTests.cs

Lines changed: 40 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -145,15 +145,14 @@ public async Task ResourcesWithHealthCheck_StopsAndRestartsMonitoringWithResourc
145145
return HealthCheckResult.Healthy();
146146
});
147147

148-
var resource = builder.AddResource(new ParentResource("resource"))
149-
.WithHealthCheck("healthcheck_a");
150-
151148
var channel = Channel.CreateUnbounded<ResourceReadyEvent>();
152-
builder.Eventing.Subscribe<ResourceReadyEvent>(resource.Resource, (@event, ct) =>
153-
{
154-
channel.Writer.TryWrite(@event);
155-
return Task.CompletedTask;
156-
});
149+
var resource = builder.AddResource(new ParentResource("resource"))
150+
.WithHealthCheck("healthcheck_a")
151+
.OnResourceReady((_, @event, _) =>
152+
{
153+
channel.Writer.TryWrite(@event);
154+
return Task.CompletedTask;
155+
});
157156

158157
await using var app = await builder.BuildAsync().DefaultTimeout();
159158

@@ -335,14 +334,14 @@ await app.ResourceNotifications.PublishUpdateAsync(resource.Resource, s => s wit
335334
public async Task ResourcesWithoutHealthCheckAnnotationsGetReadyEventFired()
336335
{
337336
using var builder = TestDistributedApplicationBuilder.Create(testOutputHelper);
338-
var resource = builder.AddResource(new ParentResource("resource"));
339337

340338
var blockAssert = new TaskCompletionSource<ResourceReadyEvent>();
341-
builder.Eventing.Subscribe<ResourceReadyEvent>(resource.Resource, (@event, ct) =>
342-
{
343-
blockAssert.SetResult(@event);
344-
return Task.CompletedTask;
345-
});
339+
var resource = builder.AddResource(new ParentResource("resource"))
340+
.OnResourceReady((_, @event, _) =>
341+
{
342+
blockAssert.SetResult(@event);
343+
return Task.CompletedTask;
344+
});
346345

347346
using var app = builder.Build();
348347
var pendingStart = app.StartAsync();
@@ -410,17 +409,16 @@ public async Task ResourceHealthCheckServiceDoesNotRunHealthChecksUnlessResource
410409
return checkStatus;
411410
});
412411

413-
var parent = builder.AddResource(new ParentResource("parent"))
414-
.WithHealthCheck("parent_test");
415-
416412
// Handle ResourceReadyEvent and use it to control when we drop through to do our assert
417413
// on the health test being executed.
418414
var resourceReadyEventFired = new TaskCompletionSource<ResourceReadyEvent>();
419-
builder.Eventing.Subscribe<ResourceReadyEvent>(parent.Resource, (@event, ct) =>
420-
{
421-
resourceReadyEventFired.SetResult(@event);
422-
return Task.CompletedTask;
423-
});
415+
var parent = builder.AddResource(new ParentResource("parent"))
416+
.WithHealthCheck("parent_test")
417+
.OnResourceReady((_, @event, _) =>
418+
{
419+
resourceReadyEventFired.SetResult(@event);
420+
return Task.CompletedTask;
421+
});
424422

425423
using var app = builder.Build();
426424
var pendingStart = app.StartAsync().DefaultTimeout(TestConstants.LongTimeoutDuration);
@@ -468,18 +466,17 @@ public async Task ResourceHealthCheckServiceOnlyRaisesResourceReadyOnce()
468466
return HealthCheckResult.Healthy();
469467
});
470468

471-
var parent = builder.AddResource(new ParentResource("parent"))
472-
.WithHealthCheck("parent_test");
473-
474469
// Handle ResourceReadyEvent and use it to control when we drop through to do our assert
475470
// on the health test being executed.
476471
var eventHits = 0;
477472
var resourceReadyEventFired = new TaskCompletionSource<ResourceReadyEvent>();
478-
builder.Eventing.Subscribe<ResourceReadyEvent>(parent.Resource, (@event, ct) =>
479-
{
480-
Interlocked.Increment(ref eventHits);
481-
return Task.CompletedTask;
482-
});
473+
var parent = builder.AddResource(new ParentResource("parent"))
474+
.WithHealthCheck("parent_test")
475+
.OnResourceReady((_, @event, _) =>
476+
{
477+
Interlocked.Increment(ref eventHits);
478+
return Task.CompletedTask;
479+
});
483480

484481
using var app = builder.Build();
485482
var pendingStart = app.StartAsync().DefaultTimeout();
@@ -516,24 +513,23 @@ public async Task VerifyThatChildResourceWillBecomeHealthyOnceParentBecomesHealt
516513
using var builder = TestDistributedApplicationBuilder.CreateWithTestContainerRegistry(testOutputHelper);
517514

518515
builder.Services.AddHealthChecks().AddCheck("parent_test", () => HealthCheckResult.Healthy());
519-
var parent = builder.AddResource(new ParentResource("parent"))
520-
.WithHealthCheck("parent_test");
521516

522517
var parentReady = new TaskCompletionSource<ResourceReadyEvent>();
523-
builder.Eventing.Subscribe<ResourceReadyEvent>(parent.Resource, (@event, ct) =>
524-
{
525-
parentReady.SetResult(@event);
526-
return Task.CompletedTask;
527-
});
528-
529-
var child = builder.AddResource(new ChildResource("child", parent.Resource));
518+
var parent = builder.AddResource(new ParentResource("parent"))
519+
.WithHealthCheck("parent_test")
520+
.OnResourceReady((_, @event, _) =>
521+
{
522+
parentReady.SetResult(@event);
523+
return Task.CompletedTask;
524+
});
530525

531526
var childReady = new TaskCompletionSource<ResourceReadyEvent>();
532-
builder.Eventing.Subscribe<ResourceReadyEvent>(child.Resource, (@event, ct) =>
533-
{
534-
childReady.SetResult(@event);
535-
return Task.CompletedTask;
536-
});
527+
var child = builder.AddResource(new ChildResource("child", parent.Resource))
528+
.OnResourceReady((_, @event, _) =>
529+
{
530+
childReady.SetResult(@event);
531+
return Task.CompletedTask;
532+
});
537533

538534
using var app = builder.Build();
539535
var pendingStart = app.StartAsync();

tests/Aspire.Hosting.Tests/Orchestrator/ApplicationOrchestratorTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ public async Task InitializeResourceEventPublished()
124124

125125
var initResourceTcs = new TaskCompletionSource();
126126
InitializeResourceEvent? initEvent = null;
127-
applicationEventing.Subscribe<InitializeResourceEvent>(resource.Resource, (@event, ct) =>
127+
resource.OnInitializeResource((_, @event, _) =>
128128
{
129129
initEvent = @event;
130130
initResourceTcs.SetResult();

tests/Aspire.Hosting.Tests/WaitForTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -531,13 +531,13 @@ public async Task WaitForObservedResultOfResourceReadyEvent()
531531
});
532532

533533
var resourceReadyTcs = new TaskCompletionSource();
534-
var dependency = builder.AddResource(new CustomResource("test"));
534+
var dependency = builder.AddResource(new CustomResource("test"))
535+
.OnResourceReady((_, _, _) => resourceReadyTcs.Task);
536+
535537
var nginx = builder.AddContainer("nginx", "mcr.microsoft.com/cbl-mariner/base/nginx", "1.22")
536538
.WithReference(dependency)
537539
.WaitFor(dependency);
538540

539-
builder.Eventing.Subscribe<ResourceReadyEvent>(dependency.Resource, (e, ct) => resourceReadyTcs.Task);
540-
541541
using var app = builder.Build();
542542

543543
// StartAsync will currently block until the dependency resource moves

0 commit comments

Comments
 (0)