// The funded wallet contains a tx with a 76_000 sats input and two outputs, one spending 25_000
// to a foreign address and one returning 50_000 back to the wallet as change. The remaining 1000
// sats are the transaction fee.
- assert_eq!(wallet.get_balance().confirmed.to_sat(), 50_000);
+ assert_eq!(wallet.get_balance().confirmed, Amount::from_sat(50_000));
}
#[test]
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.manually_selected_only();
builder.finish().unwrap();
}
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.version(0);
assert!(matches!(builder.finish(), Err(CreateTxError::Version0)));
}
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.version(1);
assert!(matches!(builder.finish(), Err(CreateTxError::Version1Csv)));
}
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.version(42);
let psbt = builder.finish().unwrap();
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let psbt = builder.finish().unwrap();
// Since we never synced the wallet we don't have a last_sync_height
let (mut wallet, _) = get_funded_wallet(get_test_wpkh());
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let psbt = builder.finish().unwrap();
let (mut wallet, _) = get_funded_wallet(get_test_single_sig_cltv());
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let psbt = builder.finish().unwrap();
assert_eq!(psbt.unsigned_tx.lock_time.to_consensus_u32(), 100_000);
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.current_height(630_001)
.nlocktime(absolute::LockTime::from_height(630_000).unwrap());
let psbt = builder.finish().unwrap();
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.nlocktime(absolute::LockTime::from_height(630_000).unwrap());
let psbt = builder.finish().unwrap();
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.nlocktime(absolute::LockTime::from_height(50000).unwrap());
assert!(matches!(builder.finish(),
Err(CreateTxError::LockTime { requested, required })
let (mut wallet, _) = get_funded_wallet(get_test_single_sig_csv());
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let psbt = builder.finish().unwrap();
assert_eq!(psbt.unsigned_tx.input[0].sequence, Sequence(6));
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.enable_rbf();
let psbt = builder.finish().unwrap();
// When CSV is enabled it takes precedence over the rbf value (unless forced by the user).
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.enable_rbf_with_sequence(Sequence(3));
assert!(matches!(builder.finish(),
Err(CreateTxError::RbfSequenceCsv { rbf, csv })
let (mut wallet, _) = get_funded_wallet(get_test_single_sig_cltv());
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let psbt = builder.finish().unwrap();
assert_eq!(psbt.unsigned_tx.input[0].sequence, Sequence(0xFFFFFFFE));
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.enable_rbf_with_sequence(Sequence(0xFFFFFFFE));
assert!(matches!(builder.finish(), Err(CreateTxError::RbfSequence)));
}
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.enable_rbf_with_sequence(Sequence(0xDEADBEEF));
let psbt = builder.finish().unwrap();
let (mut wallet, _) = get_funded_wallet(get_test_wpkh());
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let psbt = builder.finish().unwrap();
assert_eq!(psbt.unsigned_tx.input[0].sequence, Sequence(0xFFFFFFFE));
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.do_not_spend_change();
assert!(matches!(
builder.finish(),
let drain_addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 20_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(20_000))
.drain_to(drain_addr.script_pubkey())
.drain_wallet();
let psbt = builder.finish().unwrap();
let (mut wallet, _) = get_funded_wallet(get_test_wpkh());
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let psbt = builder.finish().unwrap();
let fee = check_fee!(wallet, psbt);
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.fee_rate(FeeRate::from_sat_per_vb_unchecked(5));
let psbt = builder.finish().unwrap();
let fee = check_fee!(wallet, psbt);
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.ordering(TxOrdering::Untouched);
let psbt = builder.finish().unwrap();
let fee = check_fee!(wallet, psbt);
let (mut wallet, _) = get_funded_wallet(get_test_wpkh());
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 49_800);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(49_800));
let psbt = builder.finish().unwrap();
let fee = check_fee!(wallet, psbt);
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 30_000)
- .add_recipient(addr.script_pubkey(), 10_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(30_000))
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(10_000))
.ordering(bdk::wallet::tx_builder::TxOrdering::Bip69Lexicographic);
let psbt = builder.finish().unwrap();
let fee = check_fee!(wallet, psbt);
let (mut wallet, _) = get_funded_wallet(get_test_wpkh());
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 30_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(30_000));
let psbt = builder.finish().unwrap();
assert_eq!(psbt.inputs[0].sighash_type, None);
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 30_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(30_000))
.sighash(EcdsaSighashType::Single.into());
let psbt = builder.finish().unwrap();
.assume_checked();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 30_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(30_000))
.add_utxo(OutPoint {
txid: small_output_tx.txid(),
vout: 0,
.assume_checked();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 30_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(30_000))
.add_utxo(OutPoint {
txid: small_output_tx.txid(),
vout: 0,
.unwrap()
.assume_checked();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 30_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(10_000));
builder.finish().unwrap();
}
.assume_checked();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 30_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(30_000))
.policy_path(path, KeychainKind::External);
let psbt = builder.finish().unwrap();
.assume_checked();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 30_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(30_000))
.policy_path(path, KeychainKind::External);
let psbt = builder.finish().unwrap();
.assume_checked();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 30_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(30_000))
.policy_path(path, KeychainKind::External);
let psbt = builder.finish().unwrap();
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.add_global_xpubs();
let psbt = builder.finish().unwrap();
let mut builder = wallet1.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 60_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(60_000))
.only_witness_utxo()
.add_foreign_utxo(utxo.outpoint, psbt_input, foreign_utxo_satisfaction)
.unwrap();
let mut builder = wallet1.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 60_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(60_000))
.only_witness_utxo()
.add_foreign_utxo(utxo.outpoint, psbt_input, foreign_utxo_satisfaction)
.unwrap();
.unwrap();
let mut builder = wallet1.build_tx();
- builder.add_recipient(addr.script_pubkey(), 60_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(60_000));
{
let mut builder = builder.clone();
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.add_global_xpubs();
builder.finish().unwrap();
}
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.add_global_xpubs();
let psbt = builder.finish().unwrap();
let (mut wallet, _) = get_funded_wallet(get_test_wpkh());
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let psbt = builder.finish().unwrap();
let tx = psbt.extract_tx().expect("failed to extract tx");
let (mut wallet, _) = get_funded_wallet(get_test_wpkh());
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let psbt = builder.finish().unwrap();
let tx = psbt.extract_tx().expect("failed to extract tx");
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.enable_rbf();
let psbt = builder.finish().unwrap();
let feerate = psbt.fee_rate().unwrap();
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.enable_rbf();
let psbt = builder.finish().unwrap();
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.enable_rbf();
let psbt = builder.finish().unwrap();
.assume_checked();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.enable_rbf();
let psbt = builder.finish().unwrap();
let original_sent_received =
.assume_checked();
let mut builder = wallet.build_tx().coin_selection(LargestFirstCoinSelection);
builder
- .add_recipient(addr.script_pubkey(), 45_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(45_000))
.enable_rbf();
let psbt = builder.finish().unwrap();
let tx = psbt.extract_tx().expect("failed to extract tx");
.assume_checked();
let mut builder = wallet.build_tx().coin_selection(LargestFirstCoinSelection);
builder
- .add_recipient(addr.script_pubkey(), 45_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(45_000))
.enable_rbf();
let psbt = builder.finish().unwrap();
let tx = psbt.extract_tx().expect("failed to extract tx");
.assume_checked();
let mut builder = wallet.build_tx().coin_selection(LargestFirstCoinSelection);
builder
- .add_recipient(addr.script_pubkey(), 45_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(45_000))
.enable_rbf();
let psbt = builder.finish().unwrap();
let original_sent_received =
.assume_checked();
let mut builder = wallet.build_tx().coin_selection(LargestFirstCoinSelection);
builder
- .add_recipient(addr.script_pubkey(), 45_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(45_000))
.enable_rbf();
let psbt = builder.finish().unwrap();
let mut tx = psbt.extract_tx().expect("failed to extract tx");
.assume_checked();
let mut builder = wallet.build_tx().coin_selection(LargestFirstCoinSelection);
builder
- .add_recipient(addr.script_pubkey(), 45_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(45_000))
.enable_rbf();
let psbt = builder.finish().unwrap();
let mut tx = psbt.extract_tx().expect("failed to extract tx");
let mut builder = wallet.build_tx();
builder
- .add_recipient(send_to.script_pubkey(), 8630)
+ .add_recipient(send_to.script_pubkey(), Amount::from_sat(8630))
.add_utxo(incoming_op)
.unwrap()
.enable_rbf()
.assume_checked();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 45_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(45_000))
.include_output_redeem_witness_script();
let psbt = builder.finish().unwrap();
.assume_checked();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 45_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(45_000))
.include_output_redeem_witness_script();
let mut psbt = builder.finish().unwrap();
.unwrap()
.assume_checked();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 45_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(45_000));
builder.finish().unwrap();
}
let addr = wallet.reveal_next_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let psbt = builder.finish().unwrap();
assert_eq!(
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 25_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(25_000))
.policy_path(path, KeychainKind::External);
let psbt = builder.finish().unwrap();
let mut builder = wallet1.build_tx();
builder
- .add_recipient(addr.script_pubkey(), 60_000)
+ .add_recipient(addr.script_pubkey(), Amount::from_sat(60_000))
.add_foreign_utxo(utxo.outpoint, psbt_input, foreign_utxo_satisfaction)
.unwrap();
let psbt = builder.finish().unwrap();
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let mut psbt = builder.finish().unwrap();
assert!(
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let mut psbt = builder.finish().unwrap();
assert!(
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let mut psbt = builder.finish().unwrap();
assert!(
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let mut psbt = builder.finish().unwrap();
let mut script_leaves: Vec<_> = psbt.inputs[0]
.tap_scripts
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let mut psbt = builder.finish().unwrap();
let mut script_leaves: Vec<_> = psbt.inputs[0]
.tap_scripts
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let mut psbt = builder.finish().unwrap();
wallet
let addr = wallet.next_unused_address(KeychainKind::External).unwrap();
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 25_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(25_000));
let mut psbt = builder.finish().unwrap();
// re-create the wallet with an empty db
.assume_checked();
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), balance.immature.to_sat() / 2)
+ .add_recipient(addr.script_pubkey(), balance.immature / 2)
.current_height(confirmation_height);
assert!(matches!(
builder.finish(),
// Still unspendable...
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), balance.immature.to_sat() / 2)
+ .add_recipient(addr.script_pubkey(), balance.immature / 2)
.current_height(not_yet_mature_time);
assert_matches!(
builder.finish(),
);
let mut builder = wallet.build_tx();
builder
- .add_recipient(addr.script_pubkey(), balance.confirmed.to_sat() / 2)
+ .add_recipient(addr.script_pubkey(), balance.confirmed / 2)
.current_height(maturity_time);
builder.finish().unwrap();
}
let mut builder = wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 0);
+ builder.add_recipient(addr.script_pubkey(), Amount::ZERO);
assert_matches!(
builder.finish(),
builder
.allow_dust(true)
- .add_recipient(addr.script_pubkey(), 0);
+ .add_recipient(addr.script_pubkey(), Amount::ZERO);
assert!(builder.finish().is_ok());
}
.unwrap()
.assume_checked();
let mut builder = $wallet.build_tx();
- builder.add_recipient(addr.script_pubkey(), 10_000);
+ builder.add_recipient(addr.script_pubkey(), Amount::from_sat(10_000));
let psbt = builder.finish().unwrap();