mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-26 22:08:58 +01:00
test: Add various low-level p2p tests
This commit is contained in:
@@ -12,7 +12,12 @@ into sending us something it shouldn't."""
|
||||
|
||||
import time
|
||||
|
||||
from test_framework.messages import msg_getaddr, msg_ping, msg_verack
|
||||
from test_framework.messages import (
|
||||
msg_getaddr,
|
||||
msg_ping,
|
||||
msg_verack,
|
||||
msg_version,
|
||||
)
|
||||
from test_framework.mininode import mininode_lock, P2PInterface
|
||||
from test_framework.test_framework import BitcoinTestFramework
|
||||
from test_framework.util import (
|
||||
@@ -147,6 +152,15 @@ class P2PLeakTest(BitcoinTestFramework):
|
||||
assert_equal(ver.nStartingHeight, 201)
|
||||
assert_equal(ver.nRelay, 1)
|
||||
|
||||
self.log.info('Check that old nodes are disconnected')
|
||||
p2p_old_node = self.nodes[0].add_p2p_connection(P2PInterface(), send_version=False, wait_for_verack=False)
|
||||
old_version_msg = msg_version()
|
||||
old_version_msg.nVersion = 31799
|
||||
wait_until(lambda: p2p_old_node.is_connected)
|
||||
with self.nodes[0].assert_debug_log(['peer=4 using obsolete version 31799; disconnecting']):
|
||||
p2p_old_node.send_message(old_version_msg)
|
||||
p2p_old_node.wait_for_disconnect()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
P2PLeakTest().main()
|
||||
|
||||
Reference in New Issue
Block a user