【发布时间】:2020-04-20 13:13:41
【问题描述】:
我很难弄清楚为什么我的任务被取消了。
[<Fact>]
let ``Query applicant count``() =
async {
// Test
let! response = WebGateway.get EventStore.endpoint "ApplicantCountFn" // Can't get beyond this
// Verify
match! response.Content.ReadAsStringAsync() |> Async.AwaitTask with
| "" -> Assert.True (false, "result is empty")
| _ -> ()
}
观察:
我验证了服务器返回成功的结果。
这是客户端测试的错误:
Message:
System.Threading.Tasks.TaskCanceledException : A task was canceled.
Stack Trace:
TaskAwaiter.ThrowForNonSuccess(Task task)
TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
--- End of stack trace from previous location where exception was thrown ---
TaskAwaiter.ThrowForNonSuccess(Task task)
TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
--- End of stack trace from previous location where exception was thrown ---
TaskAwaiter.ThrowForNonSuccess(Task task)
TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
附录:
let get baseAddress (resource:string) =
async {
let client = httpClient baseAddress
return! client.GetAsync(resource) |> Async.AwaitTask
}
【问题讨论】: