如何设置模拟函数的返回值



我正在使用gomock来创建用于单元测试的模拟对象。下面为模拟对象提供了一个名为 GetQuestionById 的方法,并告诉模拟控制器期望使用参数 1 调用该方法:

gw.EXPECT().GetQuestionById(1)

但是如何指定模拟方法应返回特定值?

当你调用gw.EXPECT().GetQuestionById(1)时,它最终会在模拟控制器上调用方法RecordCallRecordCall 返回一个 Call ,并且Call有一个名为 Return 的方法,它完全可以执行您想要的操作:

gw.EXPECT().GetQuestionById(1).Return(Question{1, "Foo"})

最新更新