我正在测试调用Web服务的viewmodel命令。我的viewmodel依赖于IHttpService,其中GetAsync'方法由此viewmodel调用。
我想对我的viewmodel进行单元测试并管理' GetAsync'返回已取消的任务,这是在使用HttpClient实现并且发生TimeOutException时的情况。我如何设置我的IHttpServiceMock来返回这样的任务?
我尝试使用TaskCompletionSource.SetCanceled(),但我无法判断它被取消了哪个例外...
答案 0 :(得分:1)
我认为您需要使用SetException而不是SetCanceled;一个完成异常但仍然完成的线程,而不是被要求停止工作的线程。