chore: fix failing two interop tests

This commit is contained in:
darshankabariya 2026-04-09 17:41:16 +05:30
parent 155296c4d3
commit 6ef240aa02
No known key found for this signature in database
GPG Key ID: 9A92CCD9899F0D22

View File

@ -1,4 +1,5 @@
import pytest
from tenacity import retry, stop_after_delay, wait_fixed
from src.env_vars import NODE_1, NODE_2
from src.libs.common import delay
@ -25,14 +26,20 @@ class TestPeerStore(StepsRelay, StepsStore):
logger.debug(f"Node {i} peer ID {node_id}")
ids.append(node_id)
for i in range(5):
others = []
for peer_info in nodes[i].get_peers():
logger.debug(f"Node {i} peer info {peer_info}")
peer_id = peer_info2id(peer_info, nodes[i].is_nwaku())
others.append(peer_id)
# Discv5 discovery is eventually-consistent; poll until every node's peer
# store reflects the expected mesh, or fail after the timeout.
@retry(stop=stop_after_delay(60), wait=wait_fixed(2), reraise=True)
def check_peer_stores():
for i in range(5):
others = []
for peer_info in nodes[i].get_peers():
logger.debug(f"Node {i} peer info {peer_info}")
peer_id = peer_info2id(peer_info, nodes[i].is_nwaku())
others.append(peer_id)
assert (i == 0 and len(others) == 4) or (i > 0 and len(others) >= 1), f"Some nodes missing in the peer store of Node ID {ids[i]}"
assert (i == 0 and len(others) == 4) or (i > 0 and len(others) >= 1), f"Some nodes missing in the peer store of Node ID {ids[i]}"
check_peer_stores()
def test_add_peers(self):
self.setup_main_nodes()
@ -41,13 +48,21 @@ class TestPeerStore(StepsRelay, StepsStore):
nodes = [self.node1, self.node2]
nodes.extend(self.optional_nodes)
delay(10)
peers_multiaddr = set()
for i in range(2):
for peer_info in nodes[i].get_peers():
multiaddr = peer_info2multiaddr(peer_info, nodes[i].is_nwaku())
peers_multiaddr.add(multiaddr)
assert len(peers_multiaddr) >= 5, "At least 5 multi addresses are expected"
# Discv5 discovery is eventually-consistent; poll node1 and node2's peer
# stores until the union contains >=5 multiaddrs, or fail after the timeout.
@retry(stop=stop_after_delay(60), wait=wait_fixed(2), reraise=True)
def collect_multiaddrs():
peers_multiaddr = set()
for i in range(2):
for peer_info in nodes[i].get_peers():
multiaddr = peer_info2multiaddr(peer_info, nodes[i].is_nwaku())
peers_multiaddr.add(multiaddr)
assert len(peers_multiaddr) >= 5, f"At least 5 multi addresses are expected, got {len(peers_multiaddr)}: {peers_multiaddr}"
return peers_multiaddr
peers_multiaddr = collect_multiaddrs()
# Add peers one by one excluding self for Nodes 2-5
for i in range(1, 5):