Skip to content

Commit a9bd1f9

Browse files
committed
test: warn if nodes not connected before disconnect_nodes
1 parent f547532 commit a9bd1f9

File tree

1 file changed

+16
-2
lines changed
  • test/functional/test_framework

1 file changed

+16
-2
lines changed

test/functional/test_framework/util.py

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -381,7 +381,21 @@ def set_node_times(nodes, t):
381381
node.setmocktime(t)
382382

383383
def disconnect_nodes(from_connection, node_num):
384-
for peer_id in [peer['id'] for peer in from_connection.getpeerinfo() if "testnode%d" % node_num in peer['subver']]:
384+
def get_peer_ids():
385+
result = []
386+
for peer in from_connection.getpeerinfo():
387+
if "testnode{}".format(node_num) in peer['subver']:
388+
result.append(peer['id'])
389+
return result
390+
391+
peer_ids = get_peer_ids()
392+
if not peer_ids:
393+
logger.warning("disconnect_nodes: {} and {} were not connected".format(
394+
from_connection.index,
395+
node_num
396+
))
397+
return
398+
for peer_id in peer_ids:
385399
try:
386400
from_connection.disconnectnode(nodeid=peer_id)
387401
except JSONRPCException as e:
@@ -392,7 +406,7 @@ def disconnect_nodes(from_connection, node_num):
392406
raise
393407

394408
# wait to disconnect
395-
wait_until(lambda: [peer['id'] for peer in from_connection.getpeerinfo() if "testnode%d" % node_num in peer['subver']] == [], timeout=5)
409+
wait_until(lambda: not get_peer_ids(), timeout=5)
396410

397411
def connect_nodes(from_connection, node_num):
398412
ip_port = "127.0.0.1:" + str(p2p_port(node_num))

0 commit comments

Comments
 (0)