def test_accumulator_multisig_scriptsig_NofM(masks, scripts_hex): for mask in masks: pubkeys = [] signatures = [] for key_index in range(len(mask)): private_key = PrivateKey.from_hex(private_keys_hex[key_index]) pubkeys.append(private_key.public_key) if mask[key_index]: signatures.append(bytes.fromhex(signatures_hex[key_index])) else: signatures.append(NO_SIGNATURE) script = create_script_sig(ScriptType.MULTISIG_ACCUMULATOR, sum(mask), pubkeys, signatures) assert scripts_hex[mask] == script.to_hex()
def test_accumulator_multisig_scriptpubkey_ofM(m, script_hex): public_keys = [] for i in range(m): public_keys.append(PrivateKey.from_hex(private_keys_hex[i]).public_key) output = AccumulatorMultiSigOutput(public_keys, m) assert output.to_script_bytes().hex() == script_hex