@@ -150,7 +150,7 @@ def test_getpeerinfo(self):
150150 "synced_blocks" : - 1 ,
151151 "synced_headers" : - 1 ,
152152 "timeoffset" : 0 ,
153- "transport_protocol_type" : "v1" ,
153+ "transport_protocol_type" : "v1" if not self . options . v2transport else "detecting" ,
154154 "version" : 0 ,
155155 },
156156 )
@@ -160,19 +160,23 @@ def test_getpeerinfo(self):
160160 def test_getnettotals (self ):
161161 self .log .info ("Test getnettotals" )
162162 # Test getnettotals and getpeerinfo by doing a ping. The bytes
163- # sent/received should increase by at least the size of one ping (32
164- # bytes) and one pong (32 bytes).
163+ # sent/received should increase by at least the size of one ping
164+ # and one pong. Both have a payload size of 8 bytes, but the total
165+ # size depends on the used p2p version:
166+ # - p2p v1: 24 bytes (header) + 8 bytes (payload) = 32 bytes
167+ # - p2p v2: 21 bytes (header/tag with short-id) + 8 bytes (payload) = 29 bytes
168+ ping_size = 32 if not self .options .v2transport else 29
165169 net_totals_before = self .nodes [0 ].getnettotals ()
166170 peer_info_before = self .nodes [0 ].getpeerinfo ()
167171
168172 self .nodes [0 ].ping ()
169- self .wait_until (lambda : (self .nodes [0 ].getnettotals ()['totalbytessent' ] >= net_totals_before ['totalbytessent' ] + 32 * 2 ), timeout = 1 )
170- self .wait_until (lambda : (self .nodes [0 ].getnettotals ()['totalbytesrecv' ] >= net_totals_before ['totalbytesrecv' ] + 32 * 2 ), timeout = 1 )
173+ self .wait_until (lambda : (self .nodes [0 ].getnettotals ()['totalbytessent' ] >= net_totals_before ['totalbytessent' ] + ping_size * 2 ), timeout = 1 )
174+ self .wait_until (lambda : (self .nodes [0 ].getnettotals ()['totalbytesrecv' ] >= net_totals_before ['totalbytesrecv' ] + ping_size * 2 ), timeout = 1 )
171175
172176 for peer_before in peer_info_before :
173177 peer_after = lambda : next (p for p in self .nodes [0 ].getpeerinfo () if p ['id' ] == peer_before ['id' ])
174- self .wait_until (lambda : peer_after ()['bytesrecv_per_msg' ].get ('pong' , 0 ) >= peer_before ['bytesrecv_per_msg' ].get ('pong' , 0 ) + 32 , timeout = 1 )
175- self .wait_until (lambda : peer_after ()['bytessent_per_msg' ].get ('ping' , 0 ) >= peer_before ['bytessent_per_msg' ].get ('ping' , 0 ) + 32 , timeout = 1 )
178+ self .wait_until (lambda : peer_after ()['bytesrecv_per_msg' ].get ('pong' , 0 ) >= peer_before ['bytesrecv_per_msg' ].get ('pong' , 0 ) + ping_size , timeout = 1 )
179+ self .wait_until (lambda : peer_after ()['bytessent_per_msg' ].get ('ping' , 0 ) >= peer_before ['bytessent_per_msg' ].get ('ping' , 0 ) + ping_size , timeout = 1 )
176180
177181 def test_getnetworkinfo (self ):
178182 self .log .info ("Test getnetworkinfo" )
@@ -342,7 +346,10 @@ def test_sendmsgtopeer(self):
342346 node = self .nodes [0 ]
343347
344348 self .restart_node (0 )
345- self .connect_nodes (0 , 1 )
349+ # we want to use a p2p v1 connection here in order to ensure
350+ # a peer id of zero (a downgrade from v2 to v1 would lead
351+ # to an increase of the peer id)
352+ self .connect_nodes (0 , 1 , peer_advertises_v2 = False )
346353
347354 self .log .info ("Test sendmsgtopeer" )
348355 self .log .debug ("Send a valid message" )
0 commit comments