[wallet] Add tests for Wallet::sign()
This commit is contained in:
parent
ff50087de5
commit
7a127d0275
@ -2194,4 +2194,53 @@ mod test {
|
||||
|
||||
assert_fee_rate!(psbt.extract_tx(), details.fees, FeeRate::from_sat_per_vb(5.0), @add_signature);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_sign_single_xprv() {
|
||||
let (wallet, _, _) = get_funded_wallet("wpkh(tprv8ZgxMBicQKsPd3EupYiPRhaMooHKUHJxNsTfYuScep13go8QFfHdtkG9nRkFGb7busX4isf6X9dURGCoKgitaApQ6MupRhZMcELAxTBRJgS/*)");
|
||||
let addr = wallet.get_new_address().unwrap();
|
||||
let (psbt, _) = wallet
|
||||
.create_tx(TxBuilder::from_addressees(vec![(addr.clone(), 0)]).send_all())
|
||||
.unwrap();
|
||||
|
||||
let (signed_psbt, finalized) = wallet.sign(psbt, None).unwrap();
|
||||
assert_eq!(finalized, true);
|
||||
|
||||
let extracted = signed_psbt.extract_tx();
|
||||
assert_eq!(extracted.input[0].witness.len(), 2);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_sign_single_wif() {
|
||||
let (wallet, _, _) =
|
||||
get_funded_wallet("wpkh(cVpPVruEDdmutPzisEsYvtST1usBR3ntr8pXSyt6D2YYqXRyPcFW)");
|
||||
let addr = wallet.get_new_address().unwrap();
|
||||
let (psbt, _) = wallet
|
||||
.create_tx(TxBuilder::from_addressees(vec![(addr.clone(), 0)]).send_all())
|
||||
.unwrap();
|
||||
|
||||
let (signed_psbt, finalized) = wallet.sign(psbt, None).unwrap();
|
||||
assert_eq!(finalized, true);
|
||||
|
||||
let extracted = signed_psbt.extract_tx();
|
||||
assert_eq!(extracted.input[0].witness.len(), 2);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_sign_single_xprv_no_hd_keypaths() {
|
||||
let (wallet, _, _) = get_funded_wallet("wpkh(tprv8ZgxMBicQKsPd3EupYiPRhaMooHKUHJxNsTfYuScep13go8QFfHdtkG9nRkFGb7busX4isf6X9dURGCoKgitaApQ6MupRhZMcELAxTBRJgS/*)");
|
||||
let addr = wallet.get_new_address().unwrap();
|
||||
let (mut psbt, _) = wallet
|
||||
.create_tx(TxBuilder::from_addressees(vec![(addr.clone(), 0)]).send_all())
|
||||
.unwrap();
|
||||
|
||||
psbt.inputs[0].hd_keypaths.clear();
|
||||
assert_eq!(psbt.inputs[0].hd_keypaths.len(), 0);
|
||||
|
||||
let (signed_psbt, finalized) = wallet.sign(psbt, None).unwrap();
|
||||
assert_eq!(finalized, true);
|
||||
|
||||
let extracted = signed_psbt.extract_tx();
|
||||
assert_eq!(extracted.input[0].witness.len(), 2);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user