BTreeSet::new(), recipient(), [change(0), change(1)], FeeRate::try_from(1.0).unwrap(), Target::Postage, ) .select_outgoing() .unwrap() .strip_value() .build() .unwrap(); } #[test] #[should_panic(expected = "invariant: recipient address appears exactly once in outputs")] fn invariant_recipient_appears_exactly_once() { let mut amounts = BTreeMap::new(); amounts.insert(outpoint(1), Amount::from_sat(5_000)); amounts.insert(outpoint(2), Amount::from_sat(5_000)); amounts.insert(outpoint(3), Amount::from_sat(2_000)); TransactionBuilder { amounts, fee_rate: FeeRate::try_from(1.0).unwrap(), utxos: BTreeSet::new(), locked_utxos: BTreeSet::new(), outgoing: satpoint(1, 0), inscriptions: BTreeMap::new(), recipient: recipient(), unused_change_addresses: vec![change(0), change(1)], change_addresses: vec![change(0), change(1)].into_iter().collect(), inputs: vec![outpoint(1), outpoint(2), outpoint(3)],