cmd/devp2p/internal/v4test: ignore FINDNODE in BondThenPingWithWrongFrom (#26085)
This fixes a race in the test. Co-authored-by: Felix Lange <fjl@twurst.com>
This commit is contained in:
		
							parent
							
								
									055528ae05
								
							
						
					
					
						commit
						d629e02047
					
				| @ -256,6 +256,7 @@ func WrongPacketType(t *utesting.T) { | ||||
| func BondThenPingWithWrongFrom(t *utesting.T) { | ||||
| 	te := newTestEnv(Remote, Listen1, Listen2) | ||||
| 	defer te.close() | ||||
| 
 | ||||
| 	bond(t, te) | ||||
| 
 | ||||
| 	wrongEndpoint := v4wire.Endpoint{IP: net.ParseIP("192.0.2.0")} | ||||
| @ -265,11 +266,26 @@ func BondThenPingWithWrongFrom(t *utesting.T) { | ||||
| 		To:         te.remoteEndpoint(), | ||||
| 		Expiration: futureExpiration(), | ||||
| 	}) | ||||
| 	if reply, _, err := te.read(te.l1); err != nil { | ||||
| 
 | ||||
| waitForPong: | ||||
| 	for { | ||||
| 		reply, _, err := te.read(te.l1) | ||||
| 		if err != nil { | ||||
| 			t.Fatal(err) | ||||
| 	} else if err := te.checkPong(reply, pingHash); err != nil { | ||||
| 		} | ||||
| 		switch reply.Kind() { | ||||
| 		case v4wire.PongPacket: | ||||
| 			if err := te.checkPong(reply, pingHash); err != nil { | ||||
| 				t.Fatal(err) | ||||
| 			} | ||||
| 			break waitForPong | ||||
| 		case v4wire.FindnodePacket: | ||||
| 			// FINDNODE from the node is acceptable here since the endpoint
 | ||||
| 			// verification was performed earlier.
 | ||||
| 		default: | ||||
| 			t.Fatalf("Expected PONG, got %v %v", reply.Name(), reply) | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| // This test just sends FINDNODE. The remote node should not reply
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user