Skip to content

Commit

Permalink
feat: prevent non main market bets for bet bonus grant
Browse files Browse the repository at this point in the history
  • Loading branch information
scorpioborn committed Apr 7, 2024
1 parent 80bce18 commit b423944
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 5 deletions.
3 changes: 3 additions & 0 deletions x/reward/keeper/msg_server_reward_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -690,6 +690,9 @@ func TestMsgApplyBetBonus(t *testing.T) {
Amount: sdkmath.NewInt(301),
Result: bettypes.Bet_RESULT_LOST,
Status: bettypes.Bet_STATUS_SETTLED,
Meta: bettypes.MetaData{
IsMainMarket: true,
},
}
tApp.BetKeeper.SetBet(ctx, bet, 1)

Expand Down
12 changes: 7 additions & 5 deletions x/reward/types/reward_bet_bonus.go
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,10 @@ func (sur BetBonusReward) Calculate(goCtx context.Context, ctx sdk.Context, keep
return RewardFactoryData{}, sdkerrors.Wrapf(sdkerrtypes.ErrInvalidRequest, "bet not found with uid %s", payload.BetUID)
}

if !bet.Meta.IsMainMarket {
return RewardFactoryData{}, sdkerrors.Wrapf(sdkerrtypes.ErrInvalidRequest, "bet bonus grant is allowed for main market bets only %s", payload.BetUID)
}

if bet.Result != bettypes.Bet_RESULT_LOST &&
bet.Result != bettypes.Bet_RESULT_WON {
return RewardFactoryData{}, sdkerrors.Wrapf(sdkerrtypes.ErrInvalidRequest, "bet should be winner or loser, requested bet result is %s", bet.Result)
Expand All @@ -87,11 +91,9 @@ func (sur BetBonusReward) Calculate(goCtx context.Context, ctx sdk.Context, keep
effectiveBetAmount := sdk.NewDecFromInt(bet.Amount)
if campaign.Constraints != nil {
if !campaign.Constraints.MaxBetAmount.IsNil() && campaign.Constraints.MaxBetAmount.GT(sdkmath.ZeroInt()) {
if bet.Meta.IsMainMarket {
effectiveBetAmount = sdk.NewDecFromInt(
sdkmath.MinInt(campaign.Constraints.MaxBetAmount, bet.Amount),
)
}
effectiveBetAmount = sdk.NewDecFromInt(
sdkmath.MinInt(campaign.Constraints.MaxBetAmount, bet.Amount),
)
}
}

Expand Down

0 comments on commit b423944

Please sign in to comment.