diff --git a/src/Netclaw.Cli.Tests/Tui/InitExistingInstallViewModelTests.cs b/src/Netclaw.Cli.Tests/Tui/InitExistingInstallViewModelTests.cs index cb1be39b7..77ee26868 100644 --- a/src/Netclaw.Cli.Tests/Tui/InitExistingInstallViewModelTests.cs +++ b/src/Netclaw.Cli.Tests/Tui/InitExistingInstallViewModelTests.cs @@ -307,15 +307,13 @@ public async Task Dispose_WhileDeleteIsRunning_CancelsCompletionNavigation() StartFullReset(vm); await deleteStarted.Task.WaitAsync(TestContext.Current.CancellationToken); - using var disposeStarted = new ManualResetEventSlim(); + var disposeStarted = new TaskCompletionSource(TaskCreationOptions.RunContinuationsAsynchronously); var dispose = Task.Run(() => { - disposeStarted.Set(); + disposeStarted.TrySetResult(); vm.Dispose(); }, TestContext.Current.CancellationToken); - Assert.True( - disposeStarted.Wait(TimeSpan.FromSeconds(10), TestContext.Current.CancellationToken), - "Dispose did not start."); + await disposeStarted.Task.WaitAsync(TestContext.Current.CancellationToken); releaseDelete.TrySetResult(); await dispose.WaitAsync(TestContext.Current.CancellationToken);