Changeset View
Changeset View
Standalone View
Standalone View
test/functional/abc_p2p_compactproofs.py
Show All 9 Lines | from test_framework.avatools import ( | ||||
AvaP2PInterface, | AvaP2PInterface, | ||||
gen_proof, | gen_proof, | ||||
get_proof_ids, | get_proof_ids, | ||||
wait_for_proof, | wait_for_proof, | ||||
) | ) | ||||
from test_framework.messages import ( | from test_framework.messages import ( | ||||
NODE_AVALANCHE, | NODE_AVALANCHE, | ||||
NODE_NETWORK, | NODE_NETWORK, | ||||
calculate_shortid, | |||||
msg_getavaproofs, | msg_getavaproofs, | ||||
) | ) | ||||
from test_framework.p2p import P2PInterface, p2p_lock | from test_framework.p2p import P2PInterface, p2p_lock | ||||
from test_framework.siphash import siphash256 | |||||
from test_framework.test_framework import BitcoinTestFramework | from test_framework.test_framework import BitcoinTestFramework | ||||
from test_framework.util import MAX_NODES, assert_equal, p2p_port | from test_framework.util import MAX_NODES, assert_equal, p2p_port | ||||
class CompactProofsTest(BitcoinTestFramework): | class CompactProofsTest(BitcoinTestFramework): | ||||
def set_test_params(self): | def set_test_params(self): | ||||
self.num_nodes = 1 | self.num_nodes = 1 | ||||
self.extra_args = [[ | self.extra_args = [[ | ||||
▲ Show 20 Lines • Show All 109 Lines • ▼ Show 20 Lines | def test_respond_getavaproofs(self): | ||||
proofids = get_proof_ids(node) | proofids = get_proof_ids(node) | ||||
assert_equal(len(proofids), 50) | assert_equal(len(proofids), 50) | ||||
receiving_peer = node.add_p2p_connection(AvaP2PInterface()) | receiving_peer = node.add_p2p_connection(AvaP2PInterface()) | ||||
send_getavaproof_check_shortid_len(receiving_peer, len(proofids)) | send_getavaproof_check_shortid_len(receiving_peer, len(proofids)) | ||||
avaproofs = received_avaproofs(receiving_peer) | avaproofs = received_avaproofs(receiving_peer) | ||||
expected_shortids = [ | expected_shortids = [ | ||||
siphash256( | calculate_shortid( | ||||
avaproofs.key0, | avaproofs.key0, | ||||
avaproofs.key1, | avaproofs.key1, | ||||
proofid) & 0x0000ffffffffffff for proofid in sorted(proofids)] | proofid) for proofid in sorted(proofids)] | ||||
assert_equal(expected_shortids, avaproofs.shortids) | assert_equal(expected_shortids, avaproofs.shortids) | ||||
# Don't expect any prefilled proof for now | # Don't expect any prefilled proof for now | ||||
assert_equal(len(avaproofs.prefilled_proofs), 0) | assert_equal(len(avaproofs.prefilled_proofs), 0) | ||||
def run_test(self): | def run_test(self): | ||||
self.test_send_outbound_getavaproofs() | self.test_send_outbound_getavaproofs() | ||||
self.test_send_manual_getavaproofs() | self.test_send_manual_getavaproofs() | ||||
self.test_respond_getavaproofs() | self.test_respond_getavaproofs() | ||||
if __name__ == '__main__': | if __name__ == '__main__': | ||||
CompactProofsTest().main() | CompactProofsTest().main() |