github.com/Finschia/finschia-sdk@v0.49.1/x/mint/client/testutil/grpc.go (about) 1 package testutil 2 3 import ( 4 "fmt" 5 6 "github.com/gogo/protobuf/proto" 7 8 "github.com/Finschia/finschia-sdk/testutil" 9 sdk "github.com/Finschia/finschia-sdk/types" 10 grpctypes "github.com/Finschia/finschia-sdk/types/grpc" 11 minttypes "github.com/Finschia/finschia-sdk/x/mint/types" 12 ) 13 14 func (s *IntegrationTestSuite) TestQueryGRPC() { 15 val := s.network.Validators[0] 16 baseURL := val.APIAddress 17 testCases := []struct { 18 name string 19 url string 20 headers map[string]string 21 respType proto.Message 22 expected proto.Message 23 }{ 24 { 25 "gRPC request params", 26 fmt.Sprintf("%s/cosmos/mint/v1beta1/params", baseURL), 27 map[string]string{}, 28 &minttypes.QueryParamsResponse{}, 29 &minttypes.QueryParamsResponse{ 30 Params: minttypes.NewParams("stake", sdk.NewDecWithPrec(13, 2), sdk.NewDecWithPrec(100, 2), 31 sdk.NewDec(1), sdk.NewDecWithPrec(67, 2), 60*60*8766/5), 32 }, 33 }, 34 { 35 "gRPC request inflation", 36 fmt.Sprintf("%s/cosmos/mint/v1beta1/inflation", baseURL), 37 map[string]string{}, 38 &minttypes.QueryInflationResponse{}, 39 &minttypes.QueryInflationResponse{ 40 Inflation: sdk.NewDec(1), 41 }, 42 }, 43 { 44 "gRPC request annual provisions", 45 fmt.Sprintf("%s/cosmos/mint/v1beta1/annual_provisions", baseURL), 46 map[string]string{ 47 grpctypes.GRPCBlockHeightHeader: "1", 48 }, 49 &minttypes.QueryAnnualProvisionsResponse{}, 50 &minttypes.QueryAnnualProvisionsResponse{ 51 AnnualProvisions: sdk.NewDec(500000000), 52 }, 53 }, 54 } 55 for _, tc := range testCases { 56 resp, err := testutil.GetRequestWithHeaders(tc.url, tc.headers) 57 s.Run(tc.name, func() { 58 s.Require().NoError(err) 59 s.Require().NoError(val.ClientCtx.Codec.UnmarshalJSON(resp, tc.respType)) 60 s.Require().Equal(tc.expected.String(), tc.respType.String()) 61 }) 62 } 63 }