github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/cosmos-sdk/x/auth/keeper/querier_test.go (about) 1 package keeper_test 2 3 import ( 4 "fmt" 5 "testing" 6 7 "github.com/stretchr/testify/require" 8 9 abci "github.com/fibonacci-chain/fbc/libs/tendermint/abci/types" 10 11 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/auth/exported" 12 keep "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/auth/keeper" 13 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/auth/types" 14 ) 15 16 func TestQueryAccount(t *testing.T) { 17 app, ctx := createTestApp(true) 18 cdc := app.Codec() 19 20 req := abci.RequestQuery{ 21 Path: "", 22 Data: []byte{}, 23 } 24 25 path := []string{types.QueryAccount} 26 querier := keep.NewQuerier(app.AccountKeeper) 27 28 bz, err := querier(ctx, []string{"other"}, req) 29 require.Error(t, err) 30 require.Nil(t, bz) 31 32 req = abci.RequestQuery{ 33 Path: fmt.Sprintf("custom/%s/%s", types.QuerierRoute, types.QueryAccount), 34 Data: []byte{}, 35 } 36 res, err := querier(ctx, path, req) 37 require.Error(t, err) 38 require.Nil(t, res) 39 40 req.Data = cdc.MustMarshalJSON(types.NewQueryAccountParams([]byte(""))) 41 res, err = querier(ctx, path, req) 42 require.Error(t, err) 43 require.Nil(t, res) 44 45 _, _, addr := types.KeyTestPubAddr() 46 req.Data = cdc.MustMarshalJSON(types.NewQueryAccountParams(addr)) 47 res, err = querier(ctx, path, req) 48 require.Error(t, err) 49 require.Nil(t, res) 50 51 app.AccountKeeper.SetAccount(ctx, app.AccountKeeper.NewAccountWithAddress(ctx, addr)) 52 res, err = querier(ctx, path, req) 53 require.NoError(t, err) 54 require.NotNil(t, res) 55 56 res, err = querier(ctx, path, req) 57 require.NoError(t, err) 58 require.NotNil(t, res) 59 60 var account exported.Account 61 err2 := cdc.UnmarshalJSON(res, &account) 62 require.Nil(t, err2) 63 }