2020-02-18 04:50:13 -08:00
|
|
|
package types_test
|
2019-06-19 05:24:11 -07:00
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
|
|
|
|
"github.com/stretchr/testify/require"
|
|
|
|
|
2020-08-13 07:22:16 -07:00
|
|
|
"github.com/cosmos/cosmos-sdk/testutil/network"
|
2020-02-18 04:50:13 -08:00
|
|
|
"github.com/cosmos/cosmos-sdk/x/auth/types"
|
2019-06-19 05:24:11 -07:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestAccountRetriever(t *testing.T) {
|
2020-08-13 07:22:16 -07:00
|
|
|
cfg := network.DefaultConfig()
|
|
|
|
cfg.NumValidators = 1
|
|
|
|
|
|
|
|
network := network.New(t, cfg)
|
|
|
|
defer network.Cleanup()
|
2019-06-19 05:24:11 -07:00
|
|
|
|
2020-08-13 07:22:16 -07:00
|
|
|
_, err := network.WaitForHeight(3)
|
2019-06-19 05:24:11 -07:00
|
|
|
require.NoError(t, err)
|
|
|
|
|
2020-08-13 07:22:16 -07:00
|
|
|
val := network.Validators[0]
|
|
|
|
clientCtx := val.ClientCtx
|
|
|
|
ar := types.AccountRetriever{}
|
2020-02-26 07:33:56 -08:00
|
|
|
|
2020-08-13 07:22:16 -07:00
|
|
|
clientCtx = clientCtx.WithHeight(2)
|
2019-06-19 05:24:11 -07:00
|
|
|
|
2020-08-13 07:22:16 -07:00
|
|
|
acc, err := ar.GetAccount(clientCtx, val.Address)
|
|
|
|
require.NoError(t, err)
|
|
|
|
require.NotNil(t, acc)
|
2019-06-19 05:24:11 -07:00
|
|
|
|
2020-08-13 07:22:16 -07:00
|
|
|
acc, height, err := ar.GetAccountWithHeight(clientCtx, val.Address)
|
|
|
|
require.NoError(t, err)
|
|
|
|
require.NotNil(t, acc)
|
|
|
|
require.Equal(t, height, int64(2))
|
|
|
|
|
|
|
|
require.NoError(t, ar.EnsureExists(clientCtx, val.Address))
|
|
|
|
|
|
|
|
accNum, accSeq, err := ar.GetAccountNumberSequence(clientCtx, val.Address)
|
|
|
|
require.NoError(t, err)
|
|
|
|
require.Equal(t, accNum, uint64(0))
|
|
|
|
require.Equal(t, accSeq, uint64(1))
|
2019-06-19 05:24:11 -07:00
|
|
|
}
|