Skip to content
This repository was archived by the owner on Jan 31, 2025. It is now read-only.

Commit 147396b

Browse files
authored
init (#501)
1 parent d19bdf9 commit 147396b

File tree

8 files changed

+42
-47
lines changed

8 files changed

+42
-47
lines changed

β€Žx/auction/keeper/auction.goβ€Ž

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -102,10 +102,7 @@ func (k Keeper) ExtractBid(ctx sdk.Context, bidder sdk.AccAddress, bid sdk.Coin)
102102

103103
var proposerReward sdk.Coins
104104
if params.ProposerFee.IsZero() {
105-
// send the entire bid to the escrow account when no proposer fee is set
106-
if err := k.bankKeeper.SendCoins(ctx, bidder, escrowAddress, sdk.NewCoins(bid)); err != nil {
107-
return err
108-
}
105+
return k.SendBid(ctx, bidder, escrowAddress, sdk.NewCoins(bid))
109106
} else {
110107
rewardsAddress, err := k.rewardsAddressProvider.GetRewardsAddress(ctx)
111108
if err != nil {
@@ -118,7 +115,7 @@ func (k Keeper) ExtractBid(ctx sdk.Context, bidder sdk.AccAddress, bid sdk.Coin)
118115
bid := sdk.NewDecCoinsFromCoins(bid)
119116
proposerReward, _ = bid.MulDecTruncate(params.ProposerFee).TruncateDecimal()
120117

121-
if err := k.bankKeeper.SendCoins(ctx, bidder, rewardsAddress, proposerReward); err != nil {
118+
if err := k.SendBid(ctx, bidder, rewardsAddress, proposerReward); err != nil {
122119
return err
123120
}
124121

@@ -127,7 +124,7 @@ func (k Keeper) ExtractBid(ctx sdk.Context, bidder sdk.AccAddress, bid sdk.Coin)
127124
escrowTotal := bid.Sub(sdk.NewDecCoinsFromCoins(proposerReward...))
128125
escrowReward, _ := escrowTotal.TruncateDecimal()
129126

130-
if err := k.bankKeeper.SendCoins(ctx, bidder, escrowAddress, escrowReward); err != nil {
127+
if err := k.SendBid(ctx, bidder, escrowAddress, escrowReward); err != nil {
131128
return err
132129
}
133130
}
@@ -206,6 +203,16 @@ func (k Keeper) ValidateBundleTimeouts(bidInfo *types.BidInfo) error {
206203
return nil
207204
}
208205

206+
// SendBid sends the bid from the bidder to the relevant address.
207+
func (k Keeper) SendBid(ctx sdk.Context, from, to sdk.AccAddress, bid sdk.Coins) error {
208+
moduleAddress := k.accountKeeper.GetModuleAddress(types.ModuleName)
209+
if moduleAddress.Equals(to) {
210+
return k.bankKeeper.SendCoinsFromAccountToModule(ctx, from, types.ModuleName, bid)
211+
}
212+
213+
return k.bankKeeper.SendCoins(ctx, from, to, bid)
214+
}
215+
209216
// filterSigners removes any signers from the currentSigners map that are not in the txSigners map.
210217
func filterSigners(currentSigners, txSigners map[string]struct{}) {
211218
for signer := range currentSigners {

β€Žx/auction/keeper/keeper.goβ€Ž

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ type Keeper struct {
1818
cdc codec.BinaryCodec
1919
storeKey storetypes.StoreKey
2020

21+
accountKeeper types.AccountKeeper
2122
bankKeeper types.BankKeeper
2223
rewardsAddressProvider types.RewardsAddressProvider
2324

@@ -73,6 +74,7 @@ func NewKeeperWithRewardsAddressProvider(
7374
return Keeper{
7475
cdc: cdc,
7576
storeKey: storeKey,
77+
accountKeeper: accountKeeper,
7678
bankKeeper: bankKeeper,
7779
rewardsAddressProvider: rewardsAddressProvider,
7880
authority: authority,

β€Žx/auction/types/expected_keepers.goβ€Ž

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package types
22

33
import (
4-
context "context"
4+
"context"
55

66
sdk "github.com/cosmos/cosmos-sdk/types"
77
stakingtypes "github.com/cosmos/cosmos-sdk/x/staking/types"
@@ -18,7 +18,8 @@ type AccountKeeper interface {
1818
//
1919
//go:generate mockery --name BankKeeper --output ./mocks --outpkg mocks --case underscore
2020
type BankKeeper interface {
21-
SendCoins(ctx context.Context, fromAddr, toAddr sdk.AccAddress, amt sdk.Coins) error
21+
SendCoinsFromAccountToModule(ctx context.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error
22+
SendCoins(ctx context.Context, fromAddr sdk.AccAddress, toAddr sdk.AccAddress, amt sdk.Coins) error
2223
GetBalance(ctx context.Context, addr sdk.AccAddress, denom string) sdk.Coin
2324
}
2425

β€Žx/auction/types/mocks/account_keeper.goβ€Ž

Lines changed: 2 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

β€Žx/auction/types/mocks/bank_keeper.goβ€Ž

Lines changed: 16 additions & 11 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

β€Žx/auction/types/mocks/distribution_keeper.goβ€Ž

Lines changed: 2 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

β€Žx/auction/types/mocks/rewards_address_provider.goβ€Ž

Lines changed: 2 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

β€Žx/auction/types/mocks/staking_keeper.goβ€Ž

Lines changed: 2 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
Β (0)