Changeset View
Changeset View
Standalone View
Standalone View
test/functional/p2p_filter.py
Show First 20 Lines • Show All 255 Lines • ▼ Show 20 Lines | def run_test(self): | ||||
self.test_filter(filter_peer) | self.test_filter(filter_peer) | ||||
self.nodes[0].disconnect_p2ps() | self.nodes[0].disconnect_p2ps() | ||||
self.log.info('Test BIP 37 for a node with fRelay = False') | self.log.info('Test BIP 37 for a node with fRelay = False') | ||||
# Add peer but do not send version yet | # Add peer but do not send version yet | ||||
filter_peer_without_nrelay = self.nodes[0].add_p2p_connection( | filter_peer_without_nrelay = self.nodes[0].add_p2p_connection( | ||||
P2PBloomFilter(), send_version=False, wait_for_verack=False) | P2PBloomFilter(), send_version=False, wait_for_verack=False) | ||||
# Send version with fRelay=False | # Send version with fRelay=False | ||||
filter_peer_without_nrelay.wait_until( | |||||
lambda: filter_peer_without_nrelay.is_connected, | |||||
timeout=10, | |||||
check_connected=False, | |||||
) | |||||
version_without_fRelay = msg_version() | version_without_fRelay = msg_version() | ||||
version_without_fRelay.nRelay = 0 | version_without_fRelay.nRelay = 0 | ||||
filter_peer_without_nrelay.send_message(version_without_fRelay) | filter_peer_without_nrelay.send_message(version_without_fRelay) | ||||
filter_peer_without_nrelay.wait_for_verack() | filter_peer_without_nrelay.wait_for_verack() | ||||
assert not self.nodes[0].getpeerinfo()[0]['relaytxes'] | assert not self.nodes[0].getpeerinfo()[0]['relaytxes'] | ||||
self.test_frelay_false(filter_peer_without_nrelay) | self.test_frelay_false(filter_peer_without_nrelay) | ||||
self.test_filter(filter_peer_without_nrelay) | self.test_filter(filter_peer_without_nrelay) | ||||
self.test_msg_mempool() | self.test_msg_mempool() | ||||
if __name__ == '__main__': | if __name__ == '__main__': | ||||
FilterTest().main() | FilterTest().main() |