From 138fdbb9fde7ca7aa7bafbdb7482600958c05c9d Mon Sep 17 00:00:00 2001 From: Liam Aharon <liam.aharon@hotmail.com> Date: Sat, 6 Apr 2024 09:26:42 +0400 Subject: [PATCH] stake benchmark --- .../frame/asset-rewards/src/benchmarking.rs | 30 ++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/substrate/frame/asset-rewards/src/benchmarking.rs b/substrate/frame/asset-rewards/src/benchmarking.rs index d351bb05944..d4b51105559 100644 --- a/substrate/frame/asset-rewards/src/benchmarking.rs +++ b/substrate/frame/asset-rewards/src/benchmarking.rs @@ -82,7 +82,7 @@ mod benchmarks { fn create_pool() { use super::*; - let admin: T::AccountId = T::BenchmarkHelper::to_account_id(1); + let admin = T::BenchmarkHelper::to_account_id(1); let staked_asset = T::BenchmarkHelper::to_asset_id(0); let reward_asset = T::BenchmarkHelper::to_asset_id(1); create_asset::<T>(&admin, &staked_asset, T::Assets::minimum_balance(staked_asset.clone())); @@ -112,5 +112,33 @@ mod benchmarks { ); } + #[benchmark] + fn stake() { + use super::*; + + let admin = T::BenchmarkHelper::to_account_id(1); + let staker = T::BenchmarkHelper::to_account_id(2); + let staked_asset = T::BenchmarkHelper::to_asset_id(0); + let reward_asset = T::BenchmarkHelper::to_asset_id(1); + create_asset::<T>(&staker, &staked_asset, T::Assets::minimum_balance(staked_asset.clone())); + create_asset::<T>(&admin, &reward_asset, T::Assets::minimum_balance(reward_asset.clone())); + + assert_ok!(AssetRewards::<T>::create_pool( + SystemOrigin::Signed(admin.clone()).into(), + Box::new(staked_asset.clone()), + Box::new(reward_asset.clone()), + 100u32.into(), + 200u32.into(), + None, + )); + + #[extrinsic_call] + _(SystemOrigin::Signed(staker.clone()), 0u32.into(), 100u32.into()); + + assert_last_event::<T>( + Event::Staked { who: staker, pool_id: 0u32.into(), amount: 100u32.into() }.into(), + ); + } + impl_benchmark_test_suite!(AssetRewards, crate::mock::new_test_ext(), crate::mock::MockRuntime); } -- GitLab