aboutsummaryrefslogtreecommitdiff
path: root/test/functional/test_framework/test_node.py
diff options
context:
space:
mode:
authorJohn Newbery <john@johnnewbery.com>2020-11-28 12:41:15 +0000
committerJohn Newbery <john@johnnewbery.com>2021-02-17 09:29:44 +0000
commit9f21ed4037758f407b536c0dd129f8da83173c79 (patch)
tree0168609572639ab144ef0a326cf86727ba8c186e /test/functional/test_framework/test_node.py
parent9ce4c3c4c1682032500c97af2d6383897b87c413 (diff)
downloadbitcoin-9f21ed4037758f407b536c0dd129f8da83173c79.tar.xz
[test] Check user agent string from test framework connections
Add a check that new connections from the test framework to the node have the correct user agent string. This makes bugs easier to detect if the user agent string ever changes.
Diffstat (limited to 'test/functional/test_framework/test_node.py')
-rwxr-xr-xtest/functional/test_framework/test_node.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/test/functional/test_framework/test_node.py b/test/functional/test_framework/test_node.py
index 24f48d5535..5bc1409ba2 100755
--- a/test/functional/test_framework/test_node.py
+++ b/test/functional/test_framework/test_node.py
@@ -26,6 +26,7 @@ from .descriptors import descsum_create
from .p2p import P2P_SUBVERSION
from .util import (
MAX_NODES,
+ assert_equal,
append_config,
delete_cookie_file,
get_auth_cookie,
@@ -545,6 +546,11 @@ class TestNode():
# in comparison to the upside of making tests less fragile and unexpected intermittent errors less likely.
p2p_conn.sync_with_ping()
+ # Consistency check that the Bitcoin Core has received our user agent string. This checks the
+ # node's newest peer. It could be racy if another Bitcoin Core node has connected since we opened
+ # our connection, but we don't expect that to happen.
+ assert_equal(self.getpeerinfo()[-1]['subver'], P2P_SUBVERSION)
+
return p2p_conn
def add_outbound_p2p_connection(self, p2p_conn, *, p2p_idx, connection_type="outbound-full-relay", **kwargs):