]> Sergey Matveev's repositories - btrtrc.git/blobdiff - client_test.go
Fix ClientConfig.Logger.SetHandlers being clobbered
[btrtrc.git] / client_test.go
index e23ca1fa2d8d609e6df9249b25b47e4defbc0245..95c0face918715bcb3c48ae5129b5a4bfa34aa88 100644 (file)
@@ -18,6 +18,7 @@ import (
        "github.com/anacrolix/missinggo/v2"
        "github.com/anacrolix/missinggo/v2/filecache"
        "github.com/frankban/quicktest"
+       qt "github.com/frankban/quicktest"
        "github.com/stretchr/testify/assert"
        "github.com/stretchr/testify/require"
 
@@ -889,3 +890,16 @@ func TestBadPeerIpPort(t *testing.T) {
                })
        }
 }
+
+// https://github.com/anacrolix/torrent/issues/837
+func TestClientConfigSetHandlerNotIgnored(t *testing.T) {
+       cfg := NewDefaultClientConfig()
+       cfg.Logger.SetHandlers(log.DiscardHandler)
+       c := qt.New(t)
+       cl, err := NewClient(cfg)
+       c.Assert(err, qt.IsNil)
+       defer cl.Close()
+       c.Assert(cl.logger.Handlers, qt.HasLen, 1)
+       h := cl.logger.Handlers[0].(log.StreamHandler)
+       c.Check(h.W, qt.Equals, io.Discard)
+}