[NPoS] Use EraInfo to manipulate exposure in fast-unstake tests (#2459)

The FastUnstake pallet tests were previously directly modifying storage
items in the pallet-staking to alter exposure. However, due to the
introduction of the [new paged exposure
feature](https://github.com/paritytech/polkadot-sdk/pull/1189) these
tests were not testing against correct storage items. This issue
resulted in a bug that I didn't catch, which has been addressed in [this
fix](https://github.com/paritytech/polkadot-sdk/pull/2369).

This PR introduces a modification to how the pallet-fast-unstake handles
exposure. It now utilizes `pallet-staking::EraInfo` to set or mutate
Exposures.
This commit is contained in:
Ankan
2023-11-24 16:31:20 +01:00
committed by GitHub
parent 90488ff7e3
commit 8af61d03b6
3 changed files with 16 additions and 13 deletions
+5 -3
View File
@@ -788,10 +788,12 @@ mod on_idle {
assert_ok!(FastUnstake::register_fast_unstake(RuntimeOrigin::signed(VALIDATOR_PREFIX)));
// but they indeed are exposed!
assert!(pallet_staking::ErasStakers::<T>::contains_key(
assert!(pallet_staking::EraInfo::<T>::get_paged_exposure(
BondingDuration::get() - 1,
VALIDATOR_PREFIX
));
&VALIDATOR_PREFIX,
0
)
.is_some());
// process a block, this validator is exposed and has been slashed.
next_block(true);