【发布时间】:2020-08-05 12:37:18
【问题描述】:
一旦我的后台操作完成,我需要调用 handleError 函数。由于 isToast,errorMessage 是我需要放在主线程中的已发布变量。我为测试 test__Failure() 编写了一个函数,但在模拟请求失败完成之前,此行在函数 XCTAssertTrue(self.viewModel.isToast) 中执行。如何放置等待,延迟几秒
@Published var isToast: Bool = false
@Published var eMessage: String = ""
func handleError() {
DispatchQueue.main.async {
self.isToast = true
self.eMessage = “Test message”
}
}
func test__Failure() {
// Some simulate response which call handleError
self.simulateRequestFailure()
XCTAssertTrue(self.vm.isToast)
}
【问题讨论】:
-
您如何知道代码中的请求何时失败意味着 test_Failure 方法内部没有回调?如果可能,请更新您的代码,@Neha Pant。