Browse Source

Merge #9159: [qa] Wait for specific block announcement in p2p-compactblocks

dfa44d1 [qa] Wait for specific block announcement in p2p-compactblocks (Russell Yanofsky)
0.14
MarcoFalke 8 years ago
parent
commit
44adf683ad
No known key found for this signature in database
GPG Key ID: 2D7F2372E50FE137
  1. 9
      qa/rpc-tests/p2p-compactblocks.py

9
qa/rpc-tests/p2p-compactblocks.py

@ -186,12 +186,15 @@ class CompactBlocksTest(BitcoinTestFramework): @@ -186,12 +186,15 @@ class CompactBlocksTest(BitcoinTestFramework):
def check_announcement_of_new_block(node, peer, predicate):
peer.clear_block_announcement()
node.generate(1)
got_message = wait_until(lambda: peer.block_announced, timeout=30)
block_hash = int(node.generate(1)[0], 16)
peer.wait_for_block_announcement(block_hash, timeout=30)
assert(peer.block_announced)
assert(got_message)
with mininode_lock:
assert(predicate(peer))
assert predicate(peer), (
"block_hash={!r}, cmpctblock={!r}, inv={!r}".format(
block_hash, peer.last_cmpctblock, peer.last_inv))
# We shouldn't get any block announcements via cmpctblock yet.
check_announcement_of_new_block(node, test_node, lambda p: p.last_cmpctblock is None)

Loading…
Cancel
Save