let utxos = vec![
(outpoint(1), Amount::from_sat(1_000)),
(outpoint(2), Amount::from_sat(1_000)),
];
pretty_assert_eq!(
TransactionBuilder::new(
satpoint(1, 0),
BTreeMap::new(),
utxos.into_iter().collect(),
BTreeSet::new(),
recipient(),
[change(0), change(1)],
FeeRate::try_from(1.0).unwrap(),
Target::Value(Amount::from_sat(1500))
)
.build_transaction(),
Ok(Transaction {
version: 1,
lock_time: LockTime::ZERO,
input: vec![tx_in(outpoint(1)), tx_in(outpoint(2))],
output: vec![tx_out(1500, recipient()), tx_out(312, change(1))],
})
)
}
#[test]
fn refuse_to_send_dust() {
let utxos = vec![(outpoint(1), Amount::from_sat(1_000))];
pretty_assert_eq!(
TransactionBuilder::new(
satpoint(1, 0),
BTreeMap::from([(satpoint(1, 500), inscription_id(1))]),
utxos.into_iter().collect(),
BTreeSet::new(),
recipient(),
[change(0), change(1)],