我想模拟一个函数的响应。但是此函数位于或在另一个函数内部调用。假设我有这个功能
// main.go
func TheFunction() int {
// Some code
val := ToMockResponse()
return val
}
func ToMockResponse() int {
return 123
}
现在在我的测试文件上
// main_test.go
func TestTheFunction(t *testing.T) {
mockInstance = new(randomMock)
mockInstance.On("ToMockResponse").Return(456)
returned := TheFunction()
assert.Equal(t, 456, returned)
}
正如您在函数TheFunction()中看到的那样,调用了函数ToMockResponse。现在我想测试TheFunction但我想模拟ToMockResponse的响应如何实现?