diff --git a/internal/p2p/shim.go b/internal/p2p/shim.go index 07d1ad156..02c6842eb 100644 --- a/internal/p2p/shim.go +++ b/internal/p2p/shim.go @@ -233,9 +233,8 @@ func (rs *ReactorShim) GetChannels() []*ChannelDescriptor { // handle adding a peer. func (rs *ReactorShim) AddPeer(peer Peer) { select { - case rs.PeerUpdates.reactorUpdatesCh <- PeerUpdate{NodeID: peer.ID(), Status: PeerStatusUp}: + case rs.PeerUpdates.reactorUpdatesCh <- PeerUpdate{NodeID: peer.ID(), Status: PeerStatusUp, Channels: toChannelIDs(peer.NodeInfo().Channels)}: rs.Logger.Debug("sent peer update", "reactor", rs.Name, "peer", peer.ID(), "status", PeerStatusUp) - case <-rs.PeerUpdates.Done(): // NOTE: We explicitly DO NOT close the PeerUpdatesCh's updateCh go channel. // This is because there may be numerous spawned goroutines that are diff --git a/internal/p2p/shim_test.go b/internal/p2p/shim_test.go index d8b9e30c3..90477347c 100644 --- a/internal/p2p/shim_test.go +++ b/internal/p2p/shim_test.go @@ -84,6 +84,7 @@ func simplePeer(t *testing.T, id string) (*p2pmocks.Peer, types.NodeID) { peerID := types.NodeID(id) peer := &p2pmocks.Peer{} peer.On("ID").Return(peerID) + peer.On("NodeInfo").Return(types.NodeInfo{NodeID: peerID}).Maybe() return peer, peerID }