diff --git a/client/mock/mock.go b/client/mock/mock.go index e9022c71..27317391 100644 --- a/client/mock/mock.go +++ b/client/mock/mock.go @@ -83,7 +83,11 @@ func (m *MockClient) Call(ctx context.Context, req client.Request, rsp interface } response := r.Response if t := reflect.TypeOf(r.Response); t.Kind() == reflect.Func { - response = reflect.ValueOf(r.Response).Call([]reflect.Value{})[0].Interface() + var reqBody []reflect.Value + if t.NumIn() == 0 { + reqBody = append(reqBody, reflect.ValueOf(req.Body())) + } + response = reflect.ValueOf(r.Response).Call(reqBody)[0].Interface() } v.Set(reflect.ValueOf(response))