github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/tm2/pkg/bft/rpc/lib/client/ws/options_test.go (about) 1 package ws 2 3 import ( 4 "io" 5 "log/slog" 6 "net/http" 7 "strings" 8 "testing" 9 10 "github.com/gorilla/websocket" 11 "github.com/stretchr/testify/assert" 12 "github.com/stretchr/testify/require" 13 ) 14 15 func TestClient_WithLogger(t *testing.T) { 16 t.Parallel() 17 18 var ( 19 upgrader = websocket.Upgrader{} 20 21 handler = func(w http.ResponseWriter, r *http.Request) { 22 c, err := upgrader.Upgrade(w, r, nil) 23 24 require.NoError(t, err) 25 require.NoError(t, c.Close()) 26 } 27 ) 28 29 s := createTestServer(t, http.HandlerFunc(handler)) 30 url := "ws" + strings.TrimPrefix(s.URL, "http") 31 32 // Create the client 33 logger := slog.New(slog.NewTextHandler(io.Discard, nil)) 34 c, err := NewClient(url, WithLogger(logger)) 35 require.NoError(t, err) 36 37 assert.Equal(t, logger, c.logger) 38 }