Skip to content

Commit 843c3d6

Browse files
committed
cmd/devp2p/internal/ethtest: invert test to fail if client disconnects
1 parent c448e18 commit 843c3d6

File tree

1 file changed

+6
-14
lines changed

1 file changed

+6
-14
lines changed

cmd/devp2p/internal/ethtest/suite.go

+6-14
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,6 @@ to check if the node disconnects after receiving multiple invalid requests.`)
175175

176176
// Create request with max uint64 value for a nonexistent block
177177
badReq := &eth.GetBlockHeadersPacket{
178-
RequestId: uint64(1),
179178
GetBlockHeadersRequest: &eth.GetBlockHeadersRequest{
180179
Origin: eth.HashOrNumber{Number: ^uint64(0)},
181180
Amount: 1,
@@ -184,29 +183,22 @@ to check if the node disconnects after receiving multiple invalid requests.`)
184183
},
185184
}
186185

187-
// Send the request 10 times
186+
// Send request 10 times. Some clients are lient on the first few invalids.
188187
for i := 0; i < 10; i++ {
188+
badReq.RequestId = uint64(i)
189189
if err := conn.Write(ethProto, eth.GetBlockHeadersMsg, badReq); err != nil {
190190
if err == errDisc {
191-
t.Logf("peer disconnected after %d requests", i+1)
192-
return
191+
t.Fatalf("peer disconnected after %d requests", i+1)
193192
}
194193
t.Fatalf("write failed: %v", err)
195194
}
196-
time.Sleep(10 * time.Millisecond)
197195
}
198196

199-
// Check if peer disconnects
197+
// Check if peer disconnects at the end.
200198
code, _, err := conn.Read()
201-
if err == errDisc {
202-
t.Logf("peer disconnected after all requests")
203-
return
199+
if err == errDisc || code == discMsg {
200+
t.Fatal("peer improperly disconnected")
204201
}
205-
if code == discMsg {
206-
t.Logf("received disconnect message")
207-
return
208-
}
209-
t.Fatalf("peer did not disconnect after receiving invalid requests")
210202
}
211203

212204
func (s *Suite) TestSimultaneousRequests(t *utesting.T) {

0 commit comments

Comments
 (0)