diff --git a/pallets/parachain-staking/src/lib.rs b/pallets/parachain-staking/src/lib.rs index 82935f92210..d21a02721c4 100644 --- a/pallets/parachain-staking/src/lib.rs +++ b/pallets/parachain-staking/src/lib.rs @@ -856,7 +856,7 @@ pub mod pallet { let old = >::get(); ensure!(old != new, Error::::NoWritingSameValue); ensure!( - new <= >::get().length, + new < >::get().length, Error::::RoundLengthMustBeGreaterThanTotalSelectedCollators, ); >::put(new); @@ -895,7 +895,7 @@ pub mod pallet { let (now, first, old) = (round.current, round.first, round.length); ensure!(old != new, Error::::NoWritingSameValue); ensure!( - new >= >::get(), + new > >::get(), Error::::RoundLengthMustBeGreaterThanTotalSelectedCollators, ); round.length = new; diff --git a/pallets/parachain-staking/src/tests.rs b/pallets/parachain-staking/src/tests.rs index 113c21e9665..cbe69e0fbaa 100644 --- a/pallets/parachain-staking/src/tests.rs +++ b/pallets/parachain-staking/src/tests.rs @@ -67,7 +67,7 @@ fn set_total_selected_event_emits_correctly() { // before we can bump total_selected we must bump the blocks per round assert_ok!(ParachainStaking::set_blocks_per_round( RuntimeOrigin::root(), - 6u32 + 7u32 )); roll_blocks(1); assert_ok!(ParachainStaking::set_total_selected( @@ -93,16 +93,16 @@ fn set_total_selected_fails_if_above_blocks_per_round() { } #[test] -fn set_total_selected_passes_if_equal_to_blocks_per_round() { +fn set_total_selected_fails_if_equal_to_blocks_per_round() { ExtBuilder::default().build().execute_with(|| { assert_ok!(ParachainStaking::set_blocks_per_round( RuntimeOrigin::root(), 10u32 )); - assert_ok!(ParachainStaking::set_total_selected( - RuntimeOrigin::root(), - 10u32 - )); + assert_noop!( + ParachainStaking::set_total_selected(RuntimeOrigin::root(), 10u32), + Error::::RoundLengthMustBeGreaterThanTotalSelectedCollators, + ); }); } @@ -139,7 +139,7 @@ fn set_blocks_per_round_fails_if_below_total_selected() { } #[test] -fn set_blocks_per_round_passes_if_equal_to_total_selected() { +fn set_blocks_per_round_fails_if_equal_to_total_selected() { ExtBuilder::default().build().execute_with(|| { assert_ok!(ParachainStaking::set_blocks_per_round( RuntimeOrigin::root(), @@ -149,10 +149,10 @@ fn set_blocks_per_round_passes_if_equal_to_total_selected() { RuntimeOrigin::root(), 9u32 )); - assert_ok!(ParachainStaking::set_blocks_per_round( - RuntimeOrigin::root(), - 9u32 - )); + assert_noop!( + ParachainStaking::set_blocks_per_round(RuntimeOrigin::root(), 9u32), + Error::::RoundLengthMustBeGreaterThanTotalSelectedCollators, + ); }); } @@ -330,7 +330,7 @@ fn round_immediately_jumps_if_current_duration_exceeds_new_blocks_per_round() { roll_to(17); assert_ok!(ParachainStaking::set_blocks_per_round( RuntimeOrigin::root(), - 5u32 + 6u32 )); roll_to(18); assert_events_emitted!(Event::NewRound {