From 0e311abf19dd5d233c8cdef78d47085801beaced Mon Sep 17 00:00:00 2001 From: ninjaahhh <38544039+ninjaahhh@users.noreply.github.com> Date: Tue, 22 Sep 2020 12:22:14 -0700 Subject: [PATCH] mempool/reactor: fix reactor broadcast test (#5362) found out this issue when trying to decouple mempool reactor with its underlying clist implementation. according to its comment, the test `TestReactorNoBroadcastToSender` is intended to make sure that a peer shouldn't send tx back to its origin. however, the current test forgot to init peer state key, thus the code will get stuck at waiting for peer to catch up state *instead of* skipping sending tx back: https://github.com/tendermint/tendermint/blob/b8d08b9ef448365695de19fea0156e1c8611ae7b/mempool/reactor.go#L216-L226 this PR fixes the issue by init peer state key. --- mempool/reactor_test.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mempool/reactor_test.go b/mempool/reactor_test.go index d466c3778..071800185 100644 --- a/mempool/reactor_test.go +++ b/mempool/reactor_test.go @@ -76,6 +76,11 @@ func TestReactorNoBroadcastToSender(t *testing.T) { } } }() + for _, r := range reactors { + for _, peer := range r.Switch.Peers().List() { + peer.Set(types.PeerStateKey, peerState{1}) + } + } const peerID = 1 checkTxs(t, reactors[0].mempool, numTxs, peerID)