2020-04-19
Note
- GoでHTTP Clientのテストを書く - Qiita
http.Client.Transport
を差し替える方法, interface でモックするよりこっちのがよさそう- https://qiita.com/sawadashota/items/47d8e990f27372d4c4c8
type RoundTripFunc func(req *http.Request) *http.Response
func (f RoundTripFunc) RoundTrip(req *http.Request) (*http.Response, error) {
return f(req), nil
}
func NewTestClient(fn RoundTripFunc) *http.Client {
return &http.Client{
Transport: RoundTripFunc(fn),
}
}
- Go http.RoundTripper 実装ガイド - Qiita