From 409b907719f5e531905e5083af9f810b08b379f6 Mon Sep 17 00:00:00 2001 From: Steven Allen Date: Wed, 6 Oct 2021 15:30:37 -0700 Subject: [PATCH] feat: make compatible with go-libp2p 0.15 Specifically, remove deprecated calls in the tests. This also switches to "require" in some test cases. --- dht_test.go | 306 +++++++++++++-------------- dual/dual_test.go | 33 +-- ext_test.go | 15 +- internal/net/message_manager_test.go | 11 +- records_test.go | 10 +- rt_diversity_filter_test.go | 17 +- 6 files changed, 193 insertions(+), 199 deletions(-) diff --git a/dht_test.go b/dht_test.go index 4b4726796..f43b8f6aa 100644 --- a/dht_test.go +++ b/dht_test.go @@ -116,14 +116,11 @@ func setupDHT(ctx context.Context, t *testing.T, client bool, options ...Option) baseOpts = append(baseOpts, Mode(ModeServer)) } - d, err := New( - ctx, - bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), - append(baseOpts, options...)..., - ) - if err != nil { - t.Fatal(err) - } + host, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + + d, err := New(ctx, host, append(baseOpts, options...)...) + require.NoError(t, err) return d } @@ -703,12 +700,16 @@ func TestRefresh(t *testing.T) { } func TestRefreshBelowMinRTThreshold(t *testing.T) { - ctx := context.Background() + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + + host, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) // enable auto bootstrap on A dhtA, err := New( ctx, - bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), + host, testPrefix, Mode(ModeServer), NamespacedValidator("v", blankValidator{}), @@ -1119,7 +1120,8 @@ func TestFindPeerWithQueryFilter(t *testing.T) { ctx, cancel := context.WithCancel(context.Background()) defer cancel() - filteredPeer := bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)) + filteredPeer, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) dhts := setupDHTS(t, ctx, 4, QueryFilter(func(_ interface{}, ai peer.AddrInfo) bool { return ai.ID != filteredPeer.ID() })) @@ -1134,36 +1136,24 @@ func TestFindPeerWithQueryFilter(t *testing.T) { connect(t, ctx, dhts[1], dhts[2]) connect(t, ctx, dhts[1], dhts[3]) - err := filteredPeer.Connect(ctx, peer.AddrInfo{ + err = filteredPeer.Connect(ctx, peer.AddrInfo{ ID: dhts[2].host.ID(), Addrs: dhts[2].host.Addrs(), }) - if err != nil { - t.Fatal(err) - } - for i, maxLoops := 0, 5; i < maxLoops; i++ { - if len(dhts[2].host.Network().ConnsToPeer(filteredPeer.ID())) > 0 { - break - } - if i == maxLoops { - t.Fatal("failed to connect to the filtered peer") - } - } + require.NoError(t, err) + + require.Eventually(t, func() bool { + return len(dhts[2].host.Network().ConnsToPeer(filteredPeer.ID())) > 0 + }, 5*time.Millisecond, time.Millisecond, "failed to connect to peer") ctxT, cancel := context.WithTimeout(ctx, time.Second) defer cancel() - p, err := dhts[0].FindPeer(ctxT, filteredPeer.ID()) - if err != nil { - t.Fatal(err) - } - if p.ID == "" { - t.Fatal("Failed to find peer.") - } + p, err := dhts[0].FindPeer(ctxT, filteredPeer.ID()) + require.NoError(t, err) - if p.ID != filteredPeer.ID() { - t.Fatal("Didnt find expected peer.") - } + require.NotEmpty(t, p.ID, "Failed to find peer.") + require.Equal(t, filteredPeer.ID(), p.ID, "Didnt find expected peer.") } func TestConnectCollision(t *testing.T) { @@ -1583,7 +1573,9 @@ func TestProvideDisabled(t *testing.T) { } func TestHandleRemotePeerProtocolChanges(t *testing.T) { - ctx := context.Background() + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + os := []Option{ testPrefix, Mode(ModeServer), @@ -1592,12 +1584,16 @@ func TestHandleRemotePeerProtocolChanges(t *testing.T) { } // start host 1 that speaks dht v1 - dhtA, err := New(ctx, bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), os...) + hA, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + dhtA, err := New(ctx, hA, os...) require.NoError(t, err) defer dhtA.Close() // start host 2 that also speaks dht v1 - dhtB, err := New(ctx, bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), os...) + hB, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + dhtB, err := New(ctx, hB, os...) require.NoError(t, err) defer dhtB.Close() @@ -1631,57 +1627,52 @@ func TestGetSetPluggedProtocol(t *testing.T) { DisableAutoRefresh(), } - dhtA, err := New(ctx, bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), os...) - if err != nil { - t.Fatal(err) - } + hA, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + dhtA, err := New(ctx, hA, os...) + require.NoError(t, err) - dhtB, err := New(ctx, bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), os...) - if err != nil { - t.Fatal(err) - } + hB, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + dhtB, err := New(ctx, hB, os...) + require.NoError(t, err) connect(t, ctx, dhtA, dhtB) ctxT, cancel := context.WithTimeout(ctx, time.Second) defer cancel() - if err := dhtA.PutValue(ctxT, "/v/cat", []byte("meow")); err != nil { - t.Fatal(err) - } + err = dhtA.PutValue(ctxT, "/v/cat", []byte("meow")) + require.NoError(t, err) value, err := dhtB.GetValue(ctxT, "/v/cat") - if err != nil { - t.Fatal(err) - } + require.NoError(t, err) - if string(value) != "meow" { - t.Fatalf("Expected 'meow' got '%s'", string(value)) - } + require.Equal(t, "meow", string(value)) }) t.Run("DHT routing table for peer A won't contain B if A and B don't use same protocol", func(t *testing.T) { ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second) defer cancel() - dhtA, err := New(ctx, bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), []Option{ + hA, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + dhtA, err := New(ctx, hA, []Option{ ProtocolPrefix("/esh"), Mode(ModeServer), NamespacedValidator("v", blankValidator{}), DisableAutoRefresh(), }...) - if err != nil { - t.Fatal(err) - } + require.NoError(t, err) - dhtB, err := New(ctx, bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), []Option{ + hB, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + dhtB, err := New(ctx, hB, []Option{ ProtocolPrefix("/lsr"), Mode(ModeServer), NamespacedValidator("v", blankValidator{}), DisableAutoRefresh(), }...) - if err != nil { - t.Fatal(err) - } + require.NoError(t, err) connectNoSync(t, ctx, dhtA, dhtB) @@ -1937,73 +1928,85 @@ func TestBootStrapWhenRTIsEmpty(t *testing.T) { bootstrapAddrs[i] = b } - //---------------- - // We will initialize a DHT with 1 bootstrapper, connect it to another DHT, - // then remove the latter from the Routing Table - // This should add the bootstrap peer and the peer that the bootstrap peer is conencted to - // to it's Routing Table. - // AutoRefresh needs to be enabled for this. - dht1, err := New( - ctx, - bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), - testPrefix, - NamespacedValidator("v", blankValidator{}), - Mode(ModeServer), - BootstrapPeers(bootstrapAddrs[0]), - ) - require.NoError(t, err) - dht2 := setupDHT(ctx, t, false) - defer func() { - dht1.host.Close() - dht2.host.Close() - dht1.Close() - dht2.Close() - }() - connect(t, ctx, dht1, dht2) - require.NoError(t, dht2.Close()) - require.NoError(t, dht2.host.Close()) - require.NoError(t, dht1.host.Network().ClosePeer(dht2.self)) - dht1.routingTable.RemovePeer(dht2.self) - require.NotContains(t, dht2.self, dht1.routingTable.ListPeers()) - require.Eventually(t, func() bool { - return dht1.routingTable.Size() == 2 && dht1.routingTable.Find(bootstrappers[0].self) != "" && - dht1.routingTable.Find(bootstrapcons[0].self) != "" - }, 5*time.Second, 500*time.Millisecond) - - //---------------- - // We will initialize a DHT with 2 bootstrappers, connect it to another DHT, - // then remove the DHT handler from the other DHT which should make the first DHT's - // routing table empty. - // This should add the bootstrap peers and the peer thats the bootstrap peers are connected to - // to it's Routing Table. - // AutoRefresh needs to be enabled for this. - dht1, err = New( - ctx, - bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), - testPrefix, - NamespacedValidator("v", blankValidator{}), - Mode(ModeServer), - BootstrapPeers(bootstrapAddrs[1], bootstrapAddrs[2]), - ) - require.NoError(t, err) + { - dht2 = setupDHT(ctx, t, false) - connect(t, ctx, dht1, dht2) - defer func() { - dht1.host.Close() - dht2.host.Close() - dht1.Close() - dht2.Close() - }() - connect(t, ctx, dht1, dht2) - require.NoError(t, dht2.setMode(modeClient)) + //---------------- + // We will initialize a DHT with 1 bootstrapper, connect it to another DHT, + // then remove the latter from the Routing Table + // This should add the bootstrap peer and the peer that the bootstrap peer is conencted to + // to it's Routing Table. + // AutoRefresh needs to be enabled for this. - require.Eventually(t, func() bool { - rt := dht1.routingTable + h1, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + dht1, err := New( + ctx, + h1, + testPrefix, + NamespacedValidator("v", blankValidator{}), + Mode(ModeServer), + BootstrapPeers(bootstrapAddrs[0]), + ) + require.NoError(t, err) + dht2 := setupDHT(ctx, t, false) + defer func() { + dht1.host.Close() + dht2.host.Close() + dht1.Close() + dht2.Close() + }() + connect(t, ctx, dht1, dht2) + require.NoError(t, dht2.Close()) + require.NoError(t, dht2.host.Close()) + require.NoError(t, dht1.host.Network().ClosePeer(dht2.self)) + dht1.routingTable.RemovePeer(dht2.self) + require.NotContains(t, dht2.self, dht1.routingTable.ListPeers()) + require.Eventually(t, func() bool { + return dht1.routingTable.Size() == 2 && dht1.routingTable.Find(bootstrappers[0].self) != "" && + dht1.routingTable.Find(bootstrapcons[0].self) != "" + }, 5*time.Second, 500*time.Millisecond) + + } + + { + + //---------------- + // We will initialize a DHT with 2 bootstrappers, connect it to another DHT, + // then remove the DHT handler from the other DHT which should make the first DHT's + // routing table empty. + // This should add the bootstrap peers and the peer thats the bootstrap peers are connected to + // to it's Routing Table. + // AutoRefresh needs to be enabled for this. + h1, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + dht1, err := New( + ctx, + h1, + testPrefix, + NamespacedValidator("v", blankValidator{}), + Mode(ModeServer), + BootstrapPeers(bootstrapAddrs[1], bootstrapAddrs[2]), + ) + require.NoError(t, err) - return rt.Size() == 4 && rt.Find(bootstrappers[1].self) != "" && - rt.Find(bootstrappers[2].self) != "" && rt.Find(bootstrapcons[1].self) != "" && rt.Find(bootstrapcons[2].self) != "" - }, 5*time.Second, 500*time.Millisecond) + dht2 := setupDHT(ctx, t, false) + connect(t, ctx, dht1, dht2) + defer func() { + dht1.host.Close() + dht2.host.Close() + dht1.Close() + dht2.Close() + }() + connect(t, ctx, dht1, dht2) + require.NoError(t, dht2.setMode(modeClient)) + + require.Eventually(t, func() bool { + rt := dht1.routingTable + + return rt.Size() == 4 && rt.Find(bootstrappers[1].self) != "" && + rt.Find(bootstrappers[2].self) != "" && rt.Find(bootstrapcons[1].self) != "" && rt.Find(bootstrapcons[2].self) != "" + }, 5*time.Second, 500*time.Millisecond) + } } func TestBootstrapPeersFunc(t *testing.T) { @@ -2042,9 +2045,6 @@ func TestBootstrapPeersFunc(t *testing.T) { func TestPreconnectedNodes(t *testing.T) { ctx, cancel := context.WithCancel(context.Background()) defer cancel() - // If this test fails it may hang so set a timeout - ctx, cancel = context.WithTimeout(ctx, time.Second*10) - defer cancel() opts := []Option{ testPrefix, @@ -2053,56 +2053,36 @@ func TestPreconnectedNodes(t *testing.T) { } // Create hosts - h1 := bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)) - h2 := bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)) + h1, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + h2, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) // Setup first DHT d1, err := New(ctx, h1, opts...) - if err != nil { - t.Fatal(err) - } + require.NoError(t, err) // Connect the first host to the second - if err := h1.Connect(ctx, peer.AddrInfo{ID: h2.ID(), Addrs: h2.Addrs()}); err != nil { - t.Fatal(err) - } + err = h1.Connect(ctx, peer.AddrInfo{ID: h2.ID(), Addrs: h2.Addrs()}) + require.NoError(t, err) // Wait until we know identify has completed by checking for supported protocols // TODO: Is this needed? Could we do h2.Connect(h1) and that would wait for identify to complete. - for { + require.Eventually(t, func() bool { h1Protos, err := h2.Peerstore().SupportsProtocols(h1.ID(), d1.protocolsStrs...) - if err != nil { - t.Fatal(err) - } - - if len(h1Protos) > 0 { - break - } + require.NoError(t, err) - select { - case <-time.After(time.Millisecond * 100): - case <-ctx.Done(): - t.Fatal("test hung") - } - } + return len(h1Protos) > 0 + }, 10*time.Second, time.Millisecond) // Setup the second DHT d2, err := New(ctx, h2, opts...) - if err != nil { - t.Fatal(err) - } + require.NoError(t, err) // See if it works peers, err := d2.GetClosestPeers(ctx, "testkey") - if err != nil { - t.Fatal(err) - } - - if len(peers) != 1 { - t.Fatal("why is there more than one peer?") - } + require.NoError(t, err) - if peers[0] != h1.ID() { - t.Fatal("could not find peer") - } + require.Equal(t, len(peers), 1, "why is there more than one peer?") + require.Equal(t, h1.ID(), peers[0], "could not find peer") } diff --git a/dual/dual_test.go b/dual/dual_test.go index bab6d726d..5515e74b4 100644 --- a/dual/dual_test.go +++ b/dual/dual_test.go @@ -16,6 +16,7 @@ import ( swarmt "github.com/libp2p/go-libp2p-swarm/testing" bhost "github.com/libp2p/go-libp2p/p2p/host/basic" "github.com/multiformats/go-multiaddr" + "github.com/stretchr/testify/require" ) var wancid, lancid cid.Cid @@ -56,7 +57,8 @@ func MkFilterForPeer() (func(_ interface{}, p peer.ID) bool, *customRtHelper) { } func setupDHTWithFilters(ctx context.Context, t *testing.T, options ...dht.Option) (*DHT, []*customRtHelper) { - h := bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)) + h, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) wanFilter, wanRef := MkFilterForPeer() wanOpts := []dht.Option{ @@ -66,9 +68,7 @@ func setupDHTWithFilters(ctx context.Context, t *testing.T, options ...dht.Optio dht.RoutingTableFilter(wanFilter), } wan, err := dht.New(ctx, h, wanOpts...) - if err != nil { - t.Fatal(err) - } + require.NoError(t, err) lanFilter, lanRef := MkFilterForPeer() lanOpts := []dht.Option{ @@ -80,9 +80,7 @@ func setupDHTWithFilters(ctx context.Context, t *testing.T, options ...dht.Optio dht.Mode(dht.ModeServer), } lan, err := dht.New(ctx, h, lanOpts...) - if err != nil { - t.Fatal(err) - } + require.NoError(t, err) impl := DHT{wan, lan} return &impl, []*customRtHelper{wanRef, lanRef} @@ -90,6 +88,10 @@ func setupDHTWithFilters(ctx context.Context, t *testing.T, options ...dht.Optio func setupDHT(ctx context.Context, t *testing.T, options ...dht.Option) *DHT { t.Helper() + + host, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + baseOpts := []dht.Option{ dht.NamespacedValidator("v", blankValidator{}), dht.ProtocolPrefix("/test"), @@ -98,12 +100,11 @@ func setupDHT(ctx context.Context, t *testing.T, options ...dht.Option) *DHT { d, err := New( ctx, - bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), + host, append([]Option{DHTOption(baseOpts...)}, DHTOption(options...))..., ) - if err != nil { - t.Fatal(err) - } + require.NoError(t, err) + return d } @@ -143,9 +144,12 @@ func setupTier(ctx context.Context, t *testing.T) (*DHT, *dht.IpfsDHT, *dht.Ipfs d, hlprs := setupDHTWithFilters(ctx, t) + whost, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + wan, err := dht.New( ctx, - bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), + whost, append(baseOpts, dht.Mode(dht.ModeServer))..., ) if err != nil { @@ -154,9 +158,12 @@ func setupTier(ctx context.Context, t *testing.T) (*DHT, *dht.IpfsDHT, *dht.Ipfs hlprs[0].allow = wan.PeerID() connect(ctx, t, d.WAN, wan) + lhost, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + lan, err := dht.New( ctx, - bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)), + lhost, append(baseOpts, dht.Mode(dht.ModeServer), dht.ProtocolExtension("/lan"))..., ) if err != nil { diff --git a/ext_test.go b/ext_test.go index bfd73b0d2..016b8c1e6 100644 --- a/ext_test.go +++ b/ext_test.go @@ -11,6 +11,7 @@ import ( "github.com/libp2p/go-libp2p-core/peerstore" "github.com/libp2p/go-libp2p-core/protocol" "github.com/libp2p/go-libp2p-core/routing" + "github.com/stretchr/testify/require" record "github.com/libp2p/go-libp2p-record" swarmt "github.com/libp2p/go-libp2p-swarm/testing" @@ -100,13 +101,13 @@ func TestGetFailures(t *testing.T) { ctx := context.Background() - host1 := bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)) - host2 := bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)) + host1, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) + host2, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) d, err := New(ctx, host1, testPrefix, DisableAutoRefresh(), Mode(ModeServer)) - if err != nil { - t.Fatal(err) - } + require.NoError(t, err) // Reply with failures to every message for _, proto := range d.serverProtocols { @@ -118,9 +119,7 @@ func TestGetFailures(t *testing.T) { host1.Peerstore().AddAddrs(host2.ID(), host2.Addrs(), peerstore.ConnectedAddrTTL) _, err = host1.Network().DialPeer(ctx, host2.ID()) - if err != nil { - t.Fatal(err) - } + require.NoError(t, err) time.Sleep(1 * time.Second) // This one should time out diff --git a/internal/net/message_manager_test.go b/internal/net/message_manager_test.go index 3bd6d2aea..cb48e41f8 100644 --- a/internal/net/message_manager_test.go +++ b/internal/net/message_manager_test.go @@ -9,6 +9,8 @@ import ( swarmt "github.com/libp2p/go-libp2p-swarm/testing" bhost "github.com/libp2p/go-libp2p/p2p/host/basic" + + "github.com/stretchr/testify/require" ) func TestInvalidMessageSenderTracking(t *testing.T) { @@ -17,14 +19,13 @@ func TestInvalidMessageSenderTracking(t *testing.T) { foo := peer.ID("asdasd") - h := bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)) + h, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) msgSender := NewMessageSenderImpl(h, []protocol.ID{"/test/kad/1.0.0"}).(*messageSenderImpl) - _, err := msgSender.messageSenderForPeer(ctx, foo) - if err == nil { - t.Fatal("that shouldnt have succeeded") - } + _, err = msgSender.messageSenderForPeer(ctx, foo) + require.Error(t, err, "should have failed to find message sender") msgSender.smlk.Lock() mscnt := len(msgSender.strmap) diff --git a/records_test.go b/records_test.go index 092f5b3c0..731d03e63 100644 --- a/records_test.go +++ b/records_test.go @@ -113,7 +113,7 @@ func TestPubkeyFromDHT(t *testing.T) { pubk := identity.PublicKey() id := identity.ID() pkkey := routing.KeyForPublicKey(id) - pkbytes, err := pubk.Bytes() + pkbytes, err := ci.MarshalPublicKey(pubk) if err != nil { t.Fatal(err) } @@ -196,7 +196,7 @@ func TestPubkeyBadKeyFromDHT(t *testing.T) { if pk == peer2.PublicKey() { t.Fatal("Public keys shouldn't match here") } - wrongbytes, err := peer2.PublicKey().Bytes() + wrongbytes, err := ci.MarshalPublicKey(peer2.PublicKey()) if err != nil { t.Fatal(err) } @@ -235,7 +235,7 @@ func TestPubkeyBadKeyFromDHTGoodKeyDirect(t *testing.T) { wrong := tnet.RandIdentityOrFatal(t) pkkey := routing.KeyForPublicKey(dhtB.self) - wrongbytes, err := wrong.PublicKey().Bytes() + wrongbytes, err := ci.MarshalPublicKey(wrong.PublicKey()) if err != nil { t.Fatal(err) } @@ -284,7 +284,7 @@ func TestPubkeyGoodKeyFromDHTGoodKeyDirect(t *testing.T) { connect(t, ctx, dhtA, dhtB) pubk := dhtB.peerstore.PubKey(dhtB.self) - pkbytes, err := pubk.Bytes() + pkbytes, err := ci.MarshalPublicKey(pubk) if err != nil { t.Fatal(err) } @@ -339,7 +339,7 @@ func TestValuesDisabled(t *testing.T) { connect(t, ctx, dhtA, dhtB) pubk := dhtB.peerstore.PubKey(dhtB.self) - pkbytes, err := pubk.Bytes() + pkbytes, err := ci.MarshalPublicKey(pubk) if err != nil { t.Fatal(err) } diff --git a/rt_diversity_filter_test.go b/rt_diversity_filter_test.go index d439e863a..d9bbf9522 100644 --- a/rt_diversity_filter_test.go +++ b/rt_diversity_filter_test.go @@ -14,8 +14,11 @@ import ( ) func TestRTPeerDiversityFilter(t *testing.T) { - ctx := context.Background() - h := bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + + h, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) r := NewRTPeerDiversityFilter(h, 2, 3) // table should only have 2 for each prefix per cpl @@ -54,7 +57,8 @@ func TestRTPeerDiversityFilter(t *testing.T) { func TestRoutingTableEndToEndMaxPerCpl(t *testing.T) { ctx := context.Background() - h := bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)) + h, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) r := NewRTPeerDiversityFilter(h, 1, 2) d, err := New( @@ -107,8 +111,11 @@ func TestRoutingTableEndToEndMaxPerCpl(t *testing.T) { } func TestRoutingTableEndToEndMaxPerTable(t *testing.T) { - ctx := context.Background() - h := bhost.New(swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport)) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + + h, err := bhost.NewHost(ctx, swarmt.GenSwarm(t, ctx, swarmt.OptDisableReuseport), new(bhost.HostOpts)) + require.NoError(t, err) r := NewRTPeerDiversityFilter(h, 100, 3) d, err := New(