Projects da.wid.codes go-httpmock Files
Enable build support by adding .onedev-buildspec.yml
README.md Loading last commit info...
go.mod
httpmock.go
response.go
transport.go
README.md

go-httpmock

Recording HTTP responses

dumpedResponse, err := httpmock.DumpResponse(url, resp)
if err != nil {
    fmt.Errorf("%w", err)
}
err = dumpedResponse.SaveToFile("some/path/file")
if err != nil {
    fmt.Errorf("%w", err)
}

Creating a mock HTTP client to play it back

httpMock, err := httpmock.NewMock("some/path")
if err != nil {
    fmt.Errorf("%w", err)
}

req, err := http.NewRequest("GET", "https://google.com/", nil)
if err != nil {
    fmt.Errorf("%w", err)
}

_, err := httpMock.StandardClient().Do(req)
if err != nil {
    fmt.Errorf("%w", err)
}

Using custom fallback HTTP client

customHttpClient := &http.Client{Transport: http.DefaultTransport}
httpMock, err := httpmock.NewMock("some/path", httpmock.WithCustomHttpClient(customHttpClient))
if err != nil {
    fmt.Errorf("%w", err)
}
Please wait...
Page is in error, reload to recover