let error = Batch { satpoint, parent_info: None, inscriptions: vec![inscription], destinations: vec![reveal_address], commit_fee_rate: FeeRate::try_from(1.0).unwrap(), reveal_fee_rate: FeeRate::try_from(1.0).unwrap(), no_limit: false, reinscribe: false, postage: TransactionBuilder::TARGET_POSTAGE, mode: Mode::SharedOutput, ..Default::default() } .create_batch_inscription_transactions( inscriptions, Chain::Mainnet, BTreeSet::new(), utxos.into_iter().collect(), [commit_address, change(1)], ) .unwrap_err() .to_string(); assert!( error.contains("wallet contains no cardinal utxos"), "{}", error ); } #[test] fn inscribe_with_no_satpoint_and_enough_cardinal_utxos() { let utxos = vec![ (outpoint(1), Amount::from_sat(20_000)), (outpoint(2), Amount::from_sat(20_000)), ]; let mut inscriptions = BTreeMap::new(); inscriptions.insert( SatPoint {