mirror of
https://github.com/tendermint/tendermint.git
synced 2026-05-12 18:21:31 +00:00
This test relied on connecting to the external site `foo-bar.net`, and (predictably) the site went down and broke all of our CI runs. This changes it to use local HTTP servers instead. Co-authored-by: Erik Grinaker <erik@interchain.berlin>
37 lines
882 B
Go
37 lines
882 B
Go
package client
|
|
|
|
import (
|
|
"io/ioutil"
|
|
"log"
|
|
"net/http"
|
|
"net/http/httptest"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestHTTPClientMakeHTTPDialer(t *testing.T) {
|
|
handler := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
|
_, _ = w.Write([]byte("Hi!\n"))
|
|
})
|
|
ts := httptest.NewServer(handler)
|
|
defer ts.Close()
|
|
|
|
tsTLS := httptest.NewTLSServer(handler)
|
|
defer tsTLS.Close()
|
|
// This silences a TLS handshake error, caused by the dialer just immediately
|
|
// disconnecting, which we can just ignore.
|
|
tsTLS.Config.ErrorLog = log.New(ioutil.Discard, "", 0)
|
|
|
|
for _, testURL := range []string{ts.URL, tsTLS.URL} {
|
|
u, err := newParsedURL(testURL)
|
|
require.NoError(t, err)
|
|
dialFn, err := makeHTTPDialer(testURL)
|
|
require.Nil(t, err)
|
|
|
|
addr, err := dialFn(u.Scheme, u.GetHostWithPath())
|
|
require.NoError(t, err)
|
|
require.NotNil(t, addr)
|
|
}
|
|
}
|