Commit 5bafddac authored by felipe's avatar felipe Committed by GitHub

fix(op-node): handle async disconnects to avoid test flakiness (#10019)

parent 4e88a61f
......@@ -224,10 +224,23 @@ func TestP2PFull(t *testing.T) {
require.Nil(t, err)
data = peerDump.Peers[hostBId]
require.NotNil(t, data)
require.NoError(t, p2pClientA.DisconnectPeer(ctx, hostB.ID()))
peerDump, err = p2pClientA.Peers(ctx, false)
require.Nil(t, err)
data = peerDump.Peers[hostBId]
retries := 0
for {
require.NoError(t, p2pClientA.DisconnectPeer(ctx, hostB.ID()))
// disconnect may take some time which we cant control from here
// so we retry a few times increasing our wait tolerance
time.Sleep(time.Duration(retries) * time.Second)
peerDump, err = p2pClientA.Peers(ctx, false)
require.Nil(t, err)
data = peerDump.Peers[hostBId]
if data == nil {
break
}
retries++
if retries > 3 {
t.Fatal("failed to disconnect peer")
}
}
require.Nil(t, data)
// reconnect
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment