cosmos-sdk/x/auth/feekeeper_test.go

60 lines
1.5 KiB
Go
Raw Normal View History

2018-05-25 20:48:27 -07:00
package auth
import (
"testing"
"github.com/stretchr/testify/require"
2018-05-25 20:48:27 -07:00
sdk "github.com/cosmos/cosmos-sdk/types"
)
var (
emptyCoins = sdk.Coins{}
2018-07-30 17:09:50 -07:00
oneCoin = sdk.Coins{sdk.NewInt64Coin("foocoin", 1)}
twoCoins = sdk.Coins{sdk.NewInt64Coin("foocoin", 2)}
2018-05-25 20:48:27 -07:00
)
func TestFeeCollectionKeeperGetSet(t *testing.T) {
2018-12-20 11:09:43 -08:00
input := setupTestInput()
ctx := input.ctx
2018-05-25 20:48:27 -07:00
// no coins initially
2018-12-20 11:09:43 -08:00
currFees := input.fck.GetCollectedFees(ctx)
require.True(t, currFees.IsEqual(emptyCoins))
2018-05-25 20:48:27 -07:00
// set feeCollection to oneCoin
2018-12-20 11:09:43 -08:00
input.fck.setCollectedFees(ctx, oneCoin)
2018-05-25 20:48:27 -07:00
// check that it is equal to oneCoin
2018-12-20 11:09:43 -08:00
require.True(t, input.fck.GetCollectedFees(ctx).IsEqual(oneCoin))
2018-05-25 20:48:27 -07:00
}
func TestFeeCollectionKeeperAdd(t *testing.T) {
2018-12-20 11:09:43 -08:00
input := setupTestInput()
ctx := input.ctx
2018-05-25 20:48:27 -07:00
// no coins initially
2018-12-20 11:09:43 -08:00
require.True(t, input.fck.GetCollectedFees(ctx).IsEqual(emptyCoins))
2018-05-25 20:48:27 -07:00
// add oneCoin and check that pool is now oneCoin
2018-12-20 11:09:43 -08:00
input.fck.AddCollectedFees(ctx, oneCoin)
require.True(t, input.fck.GetCollectedFees(ctx).IsEqual(oneCoin))
2018-05-25 20:48:27 -07:00
// add oneCoin again and check that pool is now twoCoins
2018-12-20 11:09:43 -08:00
input.fck.AddCollectedFees(ctx, oneCoin)
require.True(t, input.fck.GetCollectedFees(ctx).IsEqual(twoCoins))
2018-05-25 20:48:27 -07:00
}
func TestFeeCollectionKeeperClear(t *testing.T) {
2018-12-20 11:09:43 -08:00
input := setupTestInput()
ctx := input.ctx
2018-05-25 20:48:27 -07:00
// set coins initially
2018-12-20 11:09:43 -08:00
input.fck.setCollectedFees(ctx, twoCoins)
require.True(t, input.fck.GetCollectedFees(ctx).IsEqual(twoCoins))
2018-05-25 20:48:27 -07:00
// clear fees and see that pool is now empty
2018-12-20 11:09:43 -08:00
input.fck.ClearCollectedFees(ctx)
require.True(t, input.fck.GetCollectedFees(ctx).IsEqual(emptyCoins))
2018-05-25 20:48:27 -07:00
}