From 641a73c1011e57e22cb904f48d6bd856bde08da3 Mon Sep 17 00:00:00 2001 From: Neeraj Gupta <254676+ua741@users.noreply.github.com> Date: Tue, 19 Nov 2024 10:24:58 +0530 Subject: [PATCH] [server] validate bonus reversal --- server/pkg/repo/storagebonus/bf_addon.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/server/pkg/repo/storagebonus/bf_addon.go b/server/pkg/repo/storagebonus/bf_addon.go index 5e012f01fc..00326b4777 100644 --- a/server/pkg/repo/storagebonus/bf_addon.go +++ b/server/pkg/repo/storagebonus/bf_addon.go @@ -3,6 +3,8 @@ package storagebonus import ( "context" "fmt" + + "github.com/ente-io/museum/ente" "github.com/ente-io/museum/ente/storagebonus" ) @@ -27,7 +29,15 @@ func (r *Repository) RemoveAddOnBonus(ctx context.Context, bonusType storagebonu if err != nil { return 0, err } - return res.RowsAffected() + // verify if the bonus was removed + rowsAffected, err := res.RowsAffected() + if err != nil { + return 0, err + } + if rowsAffected == int64(0) { + return 0, ente.NewBadRequestWithMessage(fmt.Sprintf("bonus not found for user %d with bonusID %s", userID, bonusID)) + } + return rowsAffected, nil } func (r *Repository) UpdateAddOnBonus(ctx context.Context, bonusType storagebonus.BonusType, userID int64, validTill int64, storage int64) error {