我正在使用gomock来创建用于单元测试的模拟对象。下面为模拟对象提供了一个名为 GetQuestionById 的方法,并告诉模拟控制器期望使用参数 1 调用该方法:
gw.EXPECT().GetQuestionById(1)
但是如何指定模拟方法应返回特定值?
当你调用gw.EXPECT().GetQuestionById(1)
时,它最终会在模拟控制器上调用方法RecordCall
。 RecordCall
返回一个 Call
,并且Call
有一个名为 Return
的方法,它完全可以执行您想要的操作:
gw.EXPECT().GetQuestionById(1).Return(Question{1, "Foo"})