git.delta.rocks / unique-network / refs/commits / 9c50a8cd1ee9

difftreelog

fix benchmarks

Daniel Shiposha2023-10-18parent: #cfd2e2a.patch.diff
in: master

5 files changed

modifiedpallets/common/src/benchmarking.rsdiffbeforeafterboth
--- a/pallets/common/src/benchmarking.rs
+++ b/pallets/common/src/benchmarking.rs
@@ -120,7 +120,9 @@
 	create_collection_raw(
 		owner,
 		CollectionMode::NFT,
-		|owner: T::CrossAccountId, data| <Pallet<T>>::init_collection(owner.clone(), owner, data),
+		|owner: T::CrossAccountId, data| {
+			<Pallet<T>>::init_collection(owner.clone(), Some(owner), data)
+		},
 		|h| h,
 	)
 }
modifiedpallets/foreign-assets/src/benchmarking.rsdiffbeforeafterboth
1616
17#![allow(missing_docs)]17#![allow(missing_docs)]
1818
19use frame_benchmarking::{account, v2::*};19use frame_benchmarking::v2::*;
20use frame_system::RawOrigin;
20use frame_support::traits::Currency;21use pallet_common::benchmarking::create_u16_data;
21use frame_system::RawOrigin;22use sp_std::vec;
22use sp_std::{boxed::Box, vec, vec::Vec};23use staging_xcm::prelude::*;
23use staging_xcm::{opaque::latest::Junction::Parachain, v3::Junctions::X1, VersionedMultiLocation};24use up_data_structs::{CollectionMode, MAX_COLLECTION_NAME_LENGTH};
2425
25use super::{Call, Config, Pallet};26use super::{Call, Config, Pallet};
26use crate::AssetMetadata;
27
28fn bounded<T: TryFrom<Vec<u8>>>(slice: &[u8]) -> T {
29 T::try_from(slice.to_vec())
30 .map_err(|_| "slice doesn't fit")
31 .unwrap()
32}
3327
34#[benchmarks]28#[benchmarks]
35mod benchmarks {29mod benchmarks {
30
36 use super::*;31 use super::*;
3732
38 #[benchmark]33 #[benchmark]
39 fn register_foreign_asset() -> Result<(), BenchmarkError> {34 fn force_register_foreign_asset() -> Result<(), BenchmarkError> {
40 let owner: T::AccountId = account("user", 0, 1);
41 let location: VersionedMultiLocation = VersionedMultiLocation::from(X1(Parachain(1000)));35 let location =
36 MultiLocation::from(X3(Parachain(1000), PalletInstance(42), GeneralIndex(1)));
42 let metadata: AssetMetadata<37 let name = create_u16_data::<MAX_COLLECTION_NAME_LENGTH>();
43 <<T as Config>::Currency as Currency<<T as frame_system::Config>::AccountId>>::Balance,
44 > = AssetMetadata {
45 name: bounded(b"name"),
46 symbol: bounded(b"symbol"),
47 decimals: 18,
48 minimal_balance: 1u32.into(),
49 };
50 let mut balance: <<T as Config>::Currency as Currency<38 let mode = CollectionMode::NFT;
51 <T as frame_system::Config>::AccountId,
52 >>::Balance = 4_000_000_000u32.into();
53 balance = balance * balance;
54 <T as Config>::Currency::make_free_balance_be(&owner, balance);
5539
56 #[extrinsic_call]40 #[extrinsic_call]
57 _(41 _(RawOrigin::Root, location, name, mode);
58 RawOrigin::Root,
59 owner,
60 Box::new(location),
61 Box::new(metadata),
62 );
6342
64 Ok(())43 Ok(())
65 }44 }
66
67 #[benchmark]
68 fn update_foreign_asset() -> Result<(), BenchmarkError> {
69 let owner: T::AccountId = account("user", 0, 1);
70 let location: VersionedMultiLocation = VersionedMultiLocation::from(X1(Parachain(2000)));
71 let metadata: AssetMetadata<
72 <<T as Config>::Currency as Currency<<T as frame_system::Config>::AccountId>>::Balance,
73 > = AssetMetadata {
74 name: bounded(b"name"),
75 symbol: bounded(b"symbol"),
76 decimals: 18,
77 minimal_balance: 1u32.into(),
78 };
79 let metadata2: AssetMetadata<
80 <<T as Config>::Currency as Currency<<T as frame_system::Config>::AccountId>>::Balance,
81 > = AssetMetadata {
82 name: bounded(b"name2"),
83 symbol: bounded(b"symbol2"),
84 decimals: 18,
85 minimal_balance: 1u32.into(),
86 };
87 let mut balance: <<T as Config>::Currency as Currency<
88 <T as frame_system::Config>::AccountId,
89 >>::Balance = 4_000_000_000u32.into();
90 balance = balance * balance;
91 <T as Config>::Currency::make_free_balance_be(&owner, balance);
92 Pallet::<T>::register_foreign_asset(
93 RawOrigin::Root.into(),
94 owner,
95 Box::new(location.clone()),
96 Box::new(metadata),
97 )?;
98
99 #[extrinsic_call]
100 _(RawOrigin::Root, 0, Box::new(location), Box::new(metadata2));
101
102 Ok(())
103 }
104}45}
10546
modifiedpallets/fungible/src/benchmarking.rsdiffbeforeafterboth
--- a/pallets/fungible/src/benchmarking.rs
+++ b/pallets/fungible/src/benchmarking.rs
@@ -15,7 +15,7 @@
 // along with Unique Network. If not, see <http://www.gnu.org/licenses/>.
 
 use frame_benchmarking::{account, v2::*};
-use pallet_common::{bench_init, benchmarking::create_collection_raw};
+use pallet_common::{bench_init, benchmarking::create_collection_raw, Pallet as PalletCommon};
 use sp_std::prelude::*;
 use up_data_structs::{budget::Unlimited, CollectionMode, MAX_ITEMS_PER_BATCH};
 
@@ -30,7 +30,9 @@
 	create_collection_raw(
 		owner,
 		CollectionMode::Fungible(0),
-		|owner: T::CrossAccountId, data| <Pallet<T>>::init_collection(owner.clone(), owner, data),
+		|owner: T::CrossAccountId, data| {
+			<PalletCommon<T>>::init_collection(owner.clone(), Some(owner), data)
+		},
 		FungibleHandle::cast,
 	)
 }
modifiedpallets/nonfungible/src/benchmarking.rsdiffbeforeafterboth
--- a/pallets/nonfungible/src/benchmarking.rs
+++ b/pallets/nonfungible/src/benchmarking.rs
@@ -18,6 +18,7 @@
 use pallet_common::{
 	bench_init,
 	benchmarking::{create_collection_raw, property_key, property_value},
+	Pallet as PalletCommon,
 };
 use sp_std::prelude::*;
 use up_data_structs::{
@@ -56,7 +57,9 @@
 	create_collection_raw(
 		owner,
 		CollectionMode::NFT,
-		|owner: T::CrossAccountId, data| <Pallet<T>>::init_collection(owner.clone(), owner, data),
+		|owner: T::CrossAccountId, data| {
+			<PalletCommon<T>>::init_collection(owner.clone(), Some(owner), data)
+		},
 		NonfungibleHandle::cast,
 	)
 }
modifiedpallets/structure/src/benchmarking.rsdiffbeforeafterboth
--- a/pallets/structure/src/benchmarking.rs
+++ b/pallets/structure/src/benchmarking.rs
@@ -44,7 +44,7 @@
 		.unwrap();
 		T::CollectionDispatch::create(
 			caller_cross.clone(),
-			caller_cross.clone(),
+			Some(caller_cross.clone()),
 			CreateCollectionData {
 				mode: CollectionMode::NFT,
 				..Default::default()