mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-17 03:11:01 +00:00
Add Force Unreserve to Balances (#9764)
* force unreserve * add benchmark * cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_balances --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/balances/src/weights.rs --template=./.maintain/frame-weight-template.hbs Co-authored-by: Parity Bot <admin@parity.io>
This commit is contained in:
@@ -195,6 +195,26 @@ benchmarks_instance_pallet! {
|
||||
assert!(Balances::<T, I>::free_balance(&caller).is_zero());
|
||||
assert_eq!(Balances::<T, I>::free_balance(&recipient), balance);
|
||||
}
|
||||
|
||||
force_unreserve {
|
||||
let user: T::AccountId = account("user", 0, SEED);
|
||||
let user_lookup: <T::Lookup as StaticLookup>::Source = T::Lookup::unlookup(user.clone());
|
||||
|
||||
// Give some multiple of the existential deposit
|
||||
let existential_deposit = T::ExistentialDeposit::get();
|
||||
let balance = existential_deposit.saturating_mul(ED_MULTIPLIER.into());
|
||||
let _ = <Balances<T, I> as Currency<_>>::make_free_balance_be(&user, balance);
|
||||
|
||||
// Reserve the balance
|
||||
<Balances<T, I> as ReservableCurrency<_>>::reserve(&user, balance)?;
|
||||
assert_eq!(Balances::<T, I>::reserved_balance(&user), balance);
|
||||
assert!(Balances::<T, I>::free_balance(&user).is_zero());
|
||||
|
||||
}: _(RawOrigin::Root, user_lookup, balance)
|
||||
verify {
|
||||
assert!(Balances::<T, I>::reserved_balance(&user).is_zero());
|
||||
assert_eq!(Balances::<T, I>::free_balance(&user), balance);
|
||||
}
|
||||
}
|
||||
|
||||
impl_benchmark_test_suite!(
|
||||
|
||||
Reference in New Issue
Block a user