From 7d1c4da161ca429e2cd5c6d46b83167d89e17bd6 Mon Sep 17 00:00:00 2001 From: PraetorP Date: Wed, 14 Sep 2022 15:22:09 +0000 Subject: [PATCH] fix totalstaked calc bug --- --- a/Cargo.lock +++ b/Cargo.lock @@ -6475,7 +6475,7 @@ [[package]] name = "pallet-unique" -version = "0.1.4" +version = "0.2.0" dependencies = [ "ethereum", "evm-coder", --- a/pallets/app-promotion/src/lib.rs +++ b/pallets/app-promotion/src/lib.rs @@ -594,14 +594,14 @@ last_id, *income_acc.borrow(), ExistenceRequirement::KeepAlive, - ) - .and_then(|_| { - Self::add_lock_balance(last_id, *income_acc.borrow())?; - >::try_mutate(|staked| { - staked - .checked_add(&*income_acc.borrow()) - .ok_or(ArithmeticError::Overflow.into()) - }) + )?; + + Self::add_lock_balance(last_id, *income_acc.borrow())?; + >::try_mutate(|staked| -> DispatchResult { + *staked = staked + .checked_add(&*income_acc.borrow()) + .ok_or(ArithmeticError::Overflow)?; + Ok(()) })?; Self::deposit_event(Event::StakingRecalculation( --- a/tests/src/app-promotion.test.ts +++ b/tests/src/app-promotion.test.ts @@ -661,7 +661,7 @@ }); }); - it.only('should increase total staked', async() => { + it('should increase total staked', async() => { await usingPlaygrounds(async (helper) => { const staker = accounts.pop()!; const totalStakedBefore = await helper.staking.getTotalStaked(); @@ -673,12 +673,11 @@ await helper.signTransaction(palletAdmin, helper.api!.tx.appPromotion.payoutStakers(100)); const totalStakedAfter = await helper.staking.getTotalStaked(); - const stakersStakedBalance = totalStakedBefore + calculateIncome(100n * nominal, 10n); - expect(totalStakedAfter >= stakersStakedBalance).to.be.true; + expect(totalStakedAfter >= totalStakedBefore + calculateIncome(100n * nominal, 10n)).to.be.true; // staker can unstake await helper.staking.unstake(staker); - expect(await helper.staking.getTotalStaked()).to.be.equal(totalStakedAfter - stakersStakedBalance); + expect(await helper.staking.getTotalStaked()).to.be.equal(totalStakedAfter - calculateIncome(100n * nominal, 10n)); }); }); -- gitstuff