package test import ( "context" "crypto/tls" "net" "net/http" "net/http/httptest" ) // Testclient ... type Testclient struct{} // TestingHTTPClient ... func (c Testclient) TestingHTTPClient(handler http.Handler) (*http.Client, func()) { s := httptest.NewTLSServer(handler) cli := &http.Client{ Transport: &http.Transport{ DialContext: func(_ context.Context, network, _ string) (net.Conn, error) { return net.Dial(network, s.Listener.Addr().String()) }, TLSClientConfig: &tls.Config{ InsecureSkipVerify: true, }, }, } return cli, s.Close }