fn invariant_all_output_are_recognized() { let utxos = vec![(outpoint(1), Amount::from_sat(10_000))]; let mut builder = TransactionBuilder::new( satpoint(1, 3_333), BTreeMap::new(), utxos.into_iter().collect(), BTreeSet::new(), recipient(), [change(0), change(1)], FeeRate::try_from(1.0).unwrap(), Target::Postage, ) .select_outgoing() .unwrap() .align_outgoing() .add_value() .unwrap() .strip_value() .deduct_fee(); builder.change_addresses = BTreeSet::new(); builder.build().unwrap(); } #[test] #[should_panic(expected = "invariant: all outputs are above dust limit")] fn invariant_all_output_are_above_dust_limit() { let utxos = vec![(outpoint(1), Amount::from_sat(10_000))]; TransactionBuilder::new( satpoint(1, 1), BTreeMap::new(), utxos.into_iter().collect(), BTreeSet::new(), recipient(), [change(0), change(1)], FeeRate::try_from(1.0).unwrap(), Target::Postage,