1234567891011121314151617use super::*;1819use frame_benchmarking::{benchmarks, account};20use frame_support::traits::{fungible::Balanced, Get, tokens::Precision};21use up_data_structs::{22 CreateCollectionData, CollectionMode, CreateItemData, CreateNftData, budget::Unlimited,23};24use pallet_common::Config as CommonConfig;25use pallet_evm::account::CrossAccountId;2627const SEED: u32 = 1;2829benchmarks! {30 find_parent {31 let caller: T::AccountId = account("caller", 0, SEED);32 let caller_cross = T::CrossAccountId::from_sub(caller.clone());3334 let _ = <T as CommonConfig>::Currency::deposit(&caller, T::CollectionCreationPrice::get(), Precision::Exact).unwrap();35 T::CollectionDispatch::create(36 caller_cross.clone(),37 caller_cross.clone(),38 CreateCollectionData {39 mode: CollectionMode::NFT,40 ..Default::default()41 },42 )?;43 let dispatch = T::CollectionDispatch::dispatch(CollectionId(1))?;44 let dispatch = dispatch.as_dyn();4546 dispatch.create_item(caller_cross.clone(), caller_cross, CreateItemData::NFT(CreateNftData::default()), &Unlimited)?;47 }: {48 let parent = <Pallet<T>>::find_parent(CollectionId(1), TokenId(1))?;49 assert!(matches!(parent, Parent::User(_)))50 }51}