@@ -10,7 +10,7 @@ use staking::pool::pool::Pool;
1010use staking :: pool :: pool :: Pool :: STRK_CONFIG ;
1111use staking :: pool :: utils :: compute_rewards_rounded_down;
1212use staking :: staking :: interface :: {IStakingConsensusDispatcherTrait , IStakingDispatcherTrait };
13- use staking :: staking :: utils :: {BTC_WEIGHT_FACTOR , STRK_WEIGHT_FACTOR };
13+ use staking :: staking :: utils :: {BTC_WEIGHT_FACTOR , STAKING_POWER_BASE_VALUE , STRK_WEIGHT_FACTOR };
1414use staking :: test_utils :: constants :: {
1515 BTC_18D_CONFIG , BTC_5D_CONFIG , BTC_8D_CONFIG , PUBLIC_KEY , STRK_BASE_VALUE ,
1616 TEST_MIN_BTC_FOR_REWARDS ,
@@ -2585,3 +2585,37 @@ fn get_stakers_switch_delegation_flow_test() {
25852585 assert! (stakers == expected_stakers );
25862586}
25872587
2588+ /// Flow:
2589+ /// Staker stake.
2590+ /// Delegator delegate BTC.
2591+ /// Test staking power in get_stakers is 100%.
2592+ #[test]
2593+ fn get_stakers_staking_power_100_flow_test () {
2594+ let cfg : StakingInitConfig = Default :: default ();
2595+ let mut system = SystemConfigTrait :: basic_stake_flow_cfg (: cfg ). deploy ();
2596+ let stake_amount = system . staking. get_min_stake ();
2597+ let btc_delegation_amount = TEST_MIN_BTC_FOR_REWARDS ;
2598+ let staking_consensus = system . staking. consensus_dispatcher ();
2599+ let staker = system . new_staker (amount : stake_amount );
2600+ system . stake (staker : staker , amount : stake_amount , pool_enabled : true , commission : 200 );
2601+ let btc_pool = system
2602+ . set_open_for_delegation (
2603+ staker : staker , token_address : system . btc_token. contract_address (),
2604+ );
2605+ let delegator = system
2606+ . new_btc_delegator (amount : btc_delegation_amount , token : system . btc_token);
2607+ system
2608+ . delegate_btc (
2609+ delegator : delegator ,
2610+ pool : btc_pool ,
2611+ amount : btc_delegation_amount ,
2612+ token : system . btc_token,
2613+ );
2614+ system . advance_k_epochs ();
2615+
2616+ // Test get_stakers.
2617+ let stakers = staking_consensus . get_stakers (epoch_id : system . staking. get_current_epoch ());
2618+ let expected_stakers = array! [(staker . staker. address, STAKING_POWER_BASE_VALUE , Option :: None )]
2619+ . span ();
2620+ assert! (stakers == expected_stakers );
2621+ }
0 commit comments