github.com/Finschia/finschia-sdk@v0.48.1/x/mint/keeper/querier_test.go (about)

     1  package keeper_test
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/Finschia/finschia-sdk/codec"
     7  
     8  	"github.com/stretchr/testify/require"
     9  
    10  	sdk "github.com/Finschia/finschia-sdk/types"
    11  	keep "github.com/Finschia/finschia-sdk/x/mint/keeper"
    12  	"github.com/Finschia/finschia-sdk/x/mint/types"
    13  
    14  	abci "github.com/tendermint/tendermint/abci/types"
    15  )
    16  
    17  func TestNewQuerier(t *testing.T) {
    18  	app, ctx := createTestApp(true)
    19  	legacyQuerierCdc := codec.NewAminoCodec(app.LegacyAmino())
    20  	querier := keep.NewQuerier(app.MintKeeper, legacyQuerierCdc.LegacyAmino)
    21  
    22  	query := abci.RequestQuery{
    23  		Path: "",
    24  		Data: []byte{},
    25  	}
    26  
    27  	_, err := querier(ctx, []string{types.QueryParameters}, query)
    28  	require.NoError(t, err)
    29  
    30  	_, err = querier(ctx, []string{types.QueryInflation}, query)
    31  	require.NoError(t, err)
    32  
    33  	_, err = querier(ctx, []string{types.QueryAnnualProvisions}, query)
    34  	require.NoError(t, err)
    35  
    36  	_, err = querier(ctx, []string{"foo"}, query)
    37  	require.Error(t, err)
    38  }
    39  
    40  func TestQueryParams(t *testing.T) {
    41  	app, ctx := createTestApp(true)
    42  	legacyQuerierCdc := codec.NewAminoCodec(app.LegacyAmino())
    43  	querier := keep.NewQuerier(app.MintKeeper, legacyQuerierCdc.LegacyAmino)
    44  
    45  	var params types.Params
    46  
    47  	res, sdkErr := querier(ctx, []string{types.QueryParameters}, abci.RequestQuery{})
    48  	require.NoError(t, sdkErr)
    49  
    50  	err := app.LegacyAmino().UnmarshalJSON(res, &params)
    51  	require.NoError(t, err)
    52  
    53  	require.Equal(t, app.MintKeeper.GetParams(ctx), params)
    54  }
    55  
    56  func TestQueryInflation(t *testing.T) {
    57  	app, ctx := createTestApp(true)
    58  	legacyQuerierCdc := codec.NewAminoCodec(app.LegacyAmino())
    59  	querier := keep.NewQuerier(app.MintKeeper, legacyQuerierCdc.LegacyAmino)
    60  
    61  	var inflation sdk.Dec
    62  
    63  	res, sdkErr := querier(ctx, []string{types.QueryInflation}, abci.RequestQuery{})
    64  	require.NoError(t, sdkErr)
    65  
    66  	err := app.LegacyAmino().UnmarshalJSON(res, &inflation)
    67  	require.NoError(t, err)
    68  
    69  	require.Equal(t, app.MintKeeper.GetMinter(ctx).Inflation, inflation)
    70  }
    71  
    72  func TestQueryAnnualProvisions(t *testing.T) {
    73  	app, ctx := createTestApp(true)
    74  	legacyQuerierCdc := codec.NewAminoCodec(app.LegacyAmino())
    75  	querier := keep.NewQuerier(app.MintKeeper, legacyQuerierCdc.LegacyAmino)
    76  
    77  	var annualProvisions sdk.Dec
    78  
    79  	res, sdkErr := querier(ctx, []string{types.QueryAnnualProvisions}, abci.RequestQuery{})
    80  	require.NoError(t, sdkErr)
    81  
    82  	err := app.LegacyAmino().UnmarshalJSON(res, &annualProvisions)
    83  	require.NoError(t, err)
    84  
    85  	require.Equal(t, app.MintKeeper.GetMinter(ctx).AnnualProvisions, annualProvisions)
    86  }