mirror of
https://github.com/bitcoin/bitcoin.git
synced 2024-11-20 02:25:40 +01:00
Merge bitcoin/bitcoin#26314: test: perturb anchors.dat to test error during initialization
33fdfc7986
test: perturb anchors.dat to test it doesn't throw an error during initialization (brunoerg) Pull request description: Got some inspiration from `feature_init`. This PR tests whether perturbing `anchors.dat` doesn't throw any error during initialization.3f1f5f6f1e/src/addrdb.cpp (L223-L235)
ACKs for top commit: MarcoFalke: lgtm ACK33fdfc7986
Tree-SHA512: e6584debb37647677581fda08366b45b42803022cc4c4f1d5a7bd5e9e04d64da77656dad2b804855337487bdcfc891f300a2e03668d6122de769dd14f39af9ed
This commit is contained in:
commit
904a98702e
@ -63,17 +63,25 @@ class AnchorsTest(BitcoinTestFramework):
|
||||
self.log.info("Check the addresses in anchors.dat")
|
||||
|
||||
with open(node_anchors_path, "rb") as file_handler:
|
||||
anchors = file_handler.read().hex()
|
||||
anchors = file_handler.read()
|
||||
|
||||
anchors_hex = anchors.hex()
|
||||
for port in block_relay_nodes_port:
|
||||
ip_port = ip + port
|
||||
assert ip_port in anchors
|
||||
assert ip_port in anchors_hex
|
||||
for port in inbound_nodes_port:
|
||||
ip_port = ip + port
|
||||
assert ip_port not in anchors
|
||||
assert ip_port not in anchors_hex
|
||||
|
||||
self.log.info("Start node")
|
||||
self.start_node(0)
|
||||
self.log.info("Perturb anchors.dat to test it doesn't throw an error during initialization")
|
||||
with self.nodes[0].assert_debug_log(["0 block-relay-only anchors will be tried for connections."]):
|
||||
with open(node_anchors_path, "wb") as out_file_handler:
|
||||
tweaked_contents = bytearray(anchors)
|
||||
tweaked_contents[20:20] = b'1'
|
||||
out_file_handler.write(bytes(tweaked_contents))
|
||||
|
||||
self.log.info("Start node")
|
||||
self.start_node(0)
|
||||
|
||||
self.log.info("When node starts, check if anchors.dat doesn't exist anymore")
|
||||
assert not os.path.exists(node_anchors_path)
|
||||
|
Loading…
Reference in New Issue
Block a user