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

     1  package keeper_test
     2  
     3  import (
     4  	"strings"
     5  
     6  	abci "github.com/tendermint/tendermint/abci/types"
     7  
     8  	"github.com/Finschia/finschia-sdk/simapp"
     9  	"github.com/Finschia/finschia-sdk/x/evidence/exported"
    10  	"github.com/Finschia/finschia-sdk/x/evidence/types"
    11  )
    12  
    13  const (
    14  	custom = "custom"
    15  )
    16  
    17  func (suite *KeeperTestSuite) TestQuerier_QueryEvidence_Existing() {
    18  	ctx := suite.ctx.WithIsCheckTx(false)
    19  	numEvidence := 100
    20  	legacyCdc := simapp.MakeTestEncodingConfig().Amino
    21  
    22  	evidence := suite.populateEvidence(ctx, numEvidence)
    23  	query := abci.RequestQuery{
    24  		Path: strings.Join([]string{custom, types.QuerierRoute, types.QueryEvidence}, "/"),
    25  		Data: legacyCdc.MustMarshalJSON(types.NewQueryEvidenceRequest(evidence[0].Hash())),
    26  	}
    27  
    28  	bz, err := suite.querier(ctx, []string{types.QueryEvidence}, query)
    29  	suite.Nil(err)
    30  	suite.NotNil(bz)
    31  
    32  	var e exported.Evidence
    33  	suite.Nil(legacyCdc.UnmarshalJSON(bz, &e))
    34  	suite.Equal(evidence[0], e)
    35  }
    36  
    37  func (suite *KeeperTestSuite) TestQuerier_QueryEvidence_NonExisting() {
    38  	ctx := suite.ctx.WithIsCheckTx(false)
    39  	cdc := simapp.MakeTestEncodingConfig().Marshaler
    40  	numEvidence := 100
    41  
    42  	suite.populateEvidence(ctx, numEvidence)
    43  	query := abci.RequestQuery{
    44  		Path: strings.Join([]string{custom, types.QuerierRoute, types.QueryEvidence}, "/"),
    45  		Data: cdc.MustMarshalJSON(types.NewQueryEvidenceRequest([]byte("0000000000000000000000000000000000000000000000000000000000000000"))),
    46  	}
    47  
    48  	bz, err := suite.querier(ctx, []string{types.QueryEvidence}, query)
    49  	suite.NotNil(err)
    50  	suite.Nil(bz)
    51  }
    52  
    53  func (suite *KeeperTestSuite) TestQuerier_QueryAllEvidence() {
    54  	ctx := suite.ctx.WithIsCheckTx(false)
    55  	cdc := simapp.MakeTestEncodingConfig().Amino
    56  	numEvidence := 100
    57  
    58  	suite.populateEvidence(ctx, numEvidence)
    59  	query := abci.RequestQuery{
    60  		Path: strings.Join([]string{custom, types.QuerierRoute, types.QueryAllEvidence}, "/"),
    61  		Data: cdc.MustMarshalJSON(types.NewQueryAllEvidenceParams(1, numEvidence)),
    62  	}
    63  
    64  	bz, err := suite.querier(ctx, []string{types.QueryAllEvidence}, query)
    65  	suite.Nil(err)
    66  	suite.NotNil(bz)
    67  
    68  	var e []exported.Evidence
    69  	suite.Nil(cdc.UnmarshalJSON(bz, &e))
    70  	suite.Len(e, numEvidence)
    71  }
    72  
    73  func (suite *KeeperTestSuite) TestQuerier_QueryAllEvidence_InvalidPagination() {
    74  	ctx := suite.ctx.WithIsCheckTx(false)
    75  	cdc := simapp.MakeTestEncodingConfig().Amino
    76  	numEvidence := 100
    77  
    78  	suite.populateEvidence(ctx, numEvidence)
    79  	query := abci.RequestQuery{
    80  		Path: strings.Join([]string{custom, types.QuerierRoute, types.QueryAllEvidence}, "/"),
    81  		Data: cdc.MustMarshalJSON(types.NewQueryAllEvidenceParams(0, numEvidence)),
    82  	}
    83  
    84  	bz, err := suite.querier(ctx, []string{types.QueryAllEvidence}, query)
    85  	suite.Nil(err)
    86  	suite.NotNil(bz)
    87  
    88  	var e []exported.Evidence
    89  	suite.Nil(cdc.UnmarshalJSON(bz, &e))
    90  	suite.Len(e, 0)
    91  }