我有一个功能说
Myfunction() {
x.RunAsync() //Async Function call
}
我必须为Myfunction()
. 我为此使用 go-mock 。也有嘲讽x
。
Test_MyFunction() {
mockCtrl := gomock.NewController(t)
defer mockCtrl.Finish()
//EXPECT() call to stub RunAsync()
}
现在的问题是我的测试运行成功,但不知何故最后它惊慌失措地说,那个调用mockX.RunAsync()
丢失了。我认为这是因为在我的 RunAsync 被存根之前执行了延迟。如何确保所有 Async 函数在执行 defer 之前运行。