Skip to content

Commit cb8d9e9

Browse files
[Infra/Extensions.Hosting] Fix flaky test (#6621)
1 parent 7b01c50 commit cb8d9e9

File tree

1 file changed

+15
-3
lines changed

1 file changed

+15
-3
lines changed

test/OpenTelemetry.Extensions.Hosting.Tests/OpenTelemetryServicesExtensionsTests.cs

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -435,6 +435,7 @@ public void AddOpenTelemetry_WithLogging_NestedResolutionUsingConfigureTest()
435435
[Fact]
436436
public async Task AddOpenTelemetry_HostedServiceOrder_DoesNotMatter()
437437
{
438+
// Arrange
438439
var exportedItems = new List<Activity>();
439440

440441
var builder = new HostBuilder().ConfigureServices(services =>
@@ -449,12 +450,23 @@ public async Task AddOpenTelemetry_HostedServiceOrder_DoesNotMatter()
449450
});
450451
});
451452

452-
var host = builder.Build();
453+
// Act
454+
using var host = builder.Build();
453455
await host.StartAsync();
456+
457+
var service = host.Services
458+
.GetServices<IHostedService>()
459+
.OfType<TestHostedService>()
460+
.Single();
461+
462+
// Give the background service some time to run.
463+
await Task.WhenAny(service.ExecuteTask!, Task.Delay(TimeSpan.FromSeconds(5)));
464+
454465
await host.StopAsync();
455-
host.Dispose();
456466

457-
Assert.Single(exportedItems);
467+
// Assert
468+
var activity = Assert.Single(exportedItems);
469+
Assert.Equal("test", activity.DisplayName);
458470
}
459471

460472
#pragma warning disable CA1812 // Avoid uninstantiated internal classes

0 commit comments

Comments
 (0)