Skip to content
Snippets Groups Projects

Upgrade Polkadot-v1.6.0

Merged Benjamin Gallois requested to merge upgrade_polkadot_v1.6.0_2 into master
Compare and Show latest version
1 file
+ 34
26
Compare changes
  • Side-by-side
  • Inline
@@ -18,58 +18,66 @@
@@ -18,58 +18,66 @@
use super::*;
use super::*;
use frame_benchmarking::benchmarks;
use frame_benchmarking::v2::*;
use frame_system::pallet_prelude::BlockNumberFor;
use frame_system::pallet_prelude::BlockNumberFor;
#[cfg(test)]
use maplit::btreemap;
use crate::Pallet;
use crate::Pallet;
// fn assert_has_event<T: Config>(generic_event: <T as Config>::RuntimeEvent) {
#[benchmarks(
// frame_system::Pallet::<T>::assert_has_event(generic_event.into());
// }
benchmarks! {
where_clause {
where
where
T::IdtyId: From<u32>,
T::IdtyId: From<u32>,
BlockNumberFor<T>: From<u32>,
BlockNumberFor<T>: From<u32>,
}
)]
 
mod benchmarks {
 
use super::*;
// TODO membership add and renewal should be included to distance on_new_session as worst case scenario
// TODO membership add and renewal should be included to distance on_new_session as worst case scenario
// Base weight of an empty initialize
#[benchmark]
on_initialize {
fn on_initialize() {
}: {Pallet::<T>::on_initialize(BlockNumberFor::<T>::zero());}
// Base weight of an empty initialize
 
#[block]
 
{
 
Pallet::<T>::on_initialize(BlockNumberFor::<T>::zero());
 
}
 
}
expire_memberships {
#[benchmark]
let i in 0..3; // Limited by the number of validators
fn expire_memberships(i: Linear<0, 3>) {
 
// Limited by the number of validators
// Arbitrarily high, to be in the worst case of wot instance,
// Arbitrarily high, to be in the worst case of wot instance,
// this will overcount the weight in hooks see https://git.duniter.org/nodes/rust/duniter-v2s/-/issues/167
// this will overcount the weight in hooks see https://git.duniter.org/nodes/rust/duniter-v2s/-/issues/167
let block_number: BlockNumberFor::<T> = 10_000_000.into();
let block_number: BlockNumberFor<T> = 10_000_000.into();
frame_system::pallet::Pallet::<T>::set_block_number(block_number);
frame_system::pallet::Pallet::<T>::set_block_number(block_number);
let mut idties: Vec<T::IdtyId> = Vec::new();
let mut idties: Vec<T::IdtyId> = Vec::new();
for j in 1..i+1 {
for j in 1..i + 1 {
let j: T::IdtyId = j.into();
let j: T::IdtyId = j.into();
Membership::<T>::insert(j, MembershipData::<BlockNumberFor<T>>::default());
Membership::<T>::insert(j, MembershipData::<BlockNumberFor<T>>::default());
idties.push(j);
idties.push(j);
}
}
MembershipsExpireOn::<T>::insert(block_number, idties);
MembershipsExpireOn::<T>::insert(block_number, idties);
assert_eq!(MembershipsExpireOn::<T>::get(block_number).len(), i as usize);
assert_eq!(
}: {Pallet::<T>::expire_memberships(block_number);}
MembershipsExpireOn::<T>::get(block_number).len(),
verify {
i as usize
 
);
 
 
#[block]
 
{
 
Pallet::<T>::expire_memberships(block_number);
 
}
 
assert_eq!(MembershipsExpireOn::<T>::get(block_number).len(), 0_usize);
assert_eq!(MembershipsExpireOn::<T>::get(block_number).len(), 0_usize);
}
}
impl_benchmark_test_suite!(
impl_benchmark_test_suite!(
Pallet,
Pallet,
crate::mock::new_test_ext(crate::mock::MembershipConfig {
crate::mock::new_test_ext(crate::mock::MembershipConfig {
memberships: btreemap![
memberships: maplit::btreemap![
3 => MembershipData {
3 => crate::MembershipData {
expire_on: 3,
expire_on: 3,
},
},
],}),
],
 
}),
crate::mock::Test
crate::mock::Test
);
);
}
}
Loading