[英]Expected worker.ExecuteTask.IsCanceled to be true, but found False
我創建了一個工人服務項目。 另外,添加一個單元測試項目( xunit )。 這個單元測試每次都失敗。
[Fact]
public async Task ShouldCancelWorker()
{
CancellationTokenSource source = new CancellationTokenSource();
CancellationToken token = source.Token;
await worker.StartAsync(token);
source.Cancel();
worker.ExecuteTask.IsCanceled.Should().BeTrue();
}
它總是返回 true 任何想法如何解決這個問題
我假設您檢查已取消令牌(token.IsCancellationRequested)的邏輯是正確的。 在這種情況下,您應該在 source.Cancel() 和 worker.ExecuteTask.IsCanceled.Should().BeTrue() 之間放置一個延遲,以便能夠在 worker 執行循環中通過一次迭代。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.