fix: feegrant grant cli bug (#9720)
<!-- The default pull request template is for types feat, fix, or refactor. For other templates, add one of the following parameters to the url: - template=docs.md - template=other.md --> ## Description feegrant grant cli granter now accepts key name as well as address in general and accepts only address in `--generate-only` mode Closes: #9659 <!-- Add a description of the changes that this PR introduces and the files that are the most critical to review. --> --- ### Author Checklist *All items are required. Please add a note to the item if the item is not applicable and please add links to any relevant follow up issues.* I have... - [x] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [x] added `!` to the type prefix if API or client breaking change - [x] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#pr-targeting)) - [x] provided a link to the relevant issue or specification - [x] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/master/docs/building-modules) - [x] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/master/CONTRIBUTING.md#testing) - [x] added a changelog entry to `CHANGELOG.md` - [x] included comments for [documenting Go code](https://blog.golang.org/godoc) - [x] updated the relevant documentation or specification - [ ] reviewed "Files changed" and left comments if necessary - [ ] confirmed all CI checks have passed ### Reviewers Checklist *All items are required. Please add a note if the item is not applicable and please add your handle next to the items reviewed if you only reviewed selected items.* I have... - [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] confirmed `!` in the type prefix if API or client breaking change - [ ] confirmed all author checklist items have been addressed - [ ] reviewed state machine logic - [ ] reviewed API design and naming - [ ] reviewed documentation is accurate - [ ] reviewed tests and test coverage - [ ] manually tested (if applicable)
This commit is contained in:
parent
6098d7ed55
commit
085ab0669a
|
@ -77,6 +77,7 @@ Ref: https://keepachangelog.com/en/1.0.0/
|
||||||
|
|
||||||
### Bug Fixes
|
### Bug Fixes
|
||||||
|
|
||||||
|
* [\#9720](https://github.com/cosmos/cosmos-sdk/pull/9720) Feegrant grant cli granter now accepts key name as well as address in general and accepts only address in --generate-only mode
|
||||||
* [\#9651](https://github.com/cosmos/cosmos-sdk/pull/9651) Change inconsistent limit of `0` to `MaxUint64` on InfiniteGasMeter and add GasRemaining func to GasMeter.
|
* [\#9651](https://github.com/cosmos/cosmos-sdk/pull/9651) Change inconsistent limit of `0` to `MaxUint64` on InfiniteGasMeter and add GasRemaining func to GasMeter.
|
||||||
* [\#9639](https://github.com/cosmos/cosmos-sdk/pull/9639) Check store keys length before accessing them by making sure that `key` is of length `m+1` (for `key[n:m]`)
|
* [\#9639](https://github.com/cosmos/cosmos-sdk/pull/9639) Check store keys length before accessing them by making sure that `key` is of length `m+1` (for `key[n:m]`)
|
||||||
* (types) [\#9627](https://github.com/cosmos/cosmos-sdk/pull/9627) Fix nil pointer panic on `NewBigIntFromInt`
|
* (types) [\#9627](https://github.com/cosmos/cosmos-sdk/pull/9627) Fix nil pointer panic on `NewBigIntFromInt`
|
||||||
|
|
|
@ -46,7 +46,7 @@ func GetTxCmd() *cobra.Command {
|
||||||
// NewCmdFeeGrant returns a CLI command handler for creating a MsgGrantAllowance transaction.
|
// NewCmdFeeGrant returns a CLI command handler for creating a MsgGrantAllowance transaction.
|
||||||
func NewCmdFeeGrant() *cobra.Command {
|
func NewCmdFeeGrant() *cobra.Command {
|
||||||
cmd := &cobra.Command{
|
cmd := &cobra.Command{
|
||||||
Use: "grant [granter] [grantee]",
|
Use: "grant [granter_key_or_address] [grantee]",
|
||||||
Short: "Grant Fee allowance to an address",
|
Short: "Grant Fee allowance to an address",
|
||||||
Long: strings.TrimSpace(
|
Long: strings.TrimSpace(
|
||||||
fmt.Sprintf(
|
fmt.Sprintf(
|
||||||
|
@ -63,10 +63,6 @@ Examples:
|
||||||
),
|
),
|
||||||
Args: cobra.ExactArgs(2),
|
Args: cobra.ExactArgs(2),
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, args []string) error {
|
||||||
_, err := sdk.AccAddressFromBech32(args[0])
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
cmd.Flags().Set(flags.FlagFrom, args[0])
|
cmd.Flags().Set(flags.FlagFrom, args[0])
|
||||||
clientCtx, err := client.GetClientTxContext(cmd)
|
clientCtx, err := client.GetClientTxContext(cmd)
|
||||||
|
|
|
@ -10,6 +10,7 @@ import (
|
||||||
"github.com/stretchr/testify/suite"
|
"github.com/stretchr/testify/suite"
|
||||||
tmcli "github.com/tendermint/tendermint/libs/cli"
|
tmcli "github.com/tendermint/tendermint/libs/cli"
|
||||||
|
|
||||||
|
"github.com/cosmos/cosmos-sdk/client"
|
||||||
"github.com/cosmos/cosmos-sdk/client/flags"
|
"github.com/cosmos/cosmos-sdk/client/flags"
|
||||||
"github.com/cosmos/cosmos-sdk/crypto/hd"
|
"github.com/cosmos/cosmos-sdk/crypto/hd"
|
||||||
"github.com/cosmos/cosmos-sdk/crypto/keyring"
|
"github.com/cosmos/cosmos-sdk/crypto/keyring"
|
||||||
|
@ -258,6 +259,10 @@ func (s *IntegrationTestSuite) TestNewCmdFeeGrant() {
|
||||||
alreadyExistedGrantee := s.addedGrantee
|
alreadyExistedGrantee := s.addedGrantee
|
||||||
clientCtx := val.ClientCtx
|
clientCtx := val.ClientCtx
|
||||||
|
|
||||||
|
fromAddr, fromName, _, err := client.GetFromFields(clientCtx.Keyring, granter.String(), clientCtx.GenerateOnly)
|
||||||
|
s.Require().Equal(fromAddr, granter)
|
||||||
|
s.Require().NoError(err)
|
||||||
|
|
||||||
commonFlags := []string{
|
commonFlags := []string{
|
||||||
fmt.Sprintf("--%s=%s", flags.FlagBroadcastMode, flags.BroadcastBlock),
|
fmt.Sprintf("--%s=%s", flags.FlagBroadcastMode, flags.BroadcastBlock),
|
||||||
fmt.Sprintf("--%s=true", flags.FlagSkipConfirmation),
|
fmt.Sprintf("--%s=true", flags.FlagSkipConfirmation),
|
||||||
|
@ -297,6 +302,19 @@ func (s *IntegrationTestSuite) TestNewCmdFeeGrant() {
|
||||||
),
|
),
|
||||||
true, 0, nil,
|
true, 0, nil,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"wrong granter key name",
|
||||||
|
append(
|
||||||
|
[]string{
|
||||||
|
"invalid_granter",
|
||||||
|
"cosmos16dun6ehcc86e03wreqqww89ey569wuj4em572w",
|
||||||
|
fmt.Sprintf("--%s=%s", cli.FlagSpendLimit, "100stake"),
|
||||||
|
fmt.Sprintf("--%s=%s", flags.FlagFrom, granter),
|
||||||
|
},
|
||||||
|
commonFlags...,
|
||||||
|
),
|
||||||
|
true, 0, nil,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"valid basic fee grant",
|
"valid basic fee grant",
|
||||||
append(
|
append(
|
||||||
|
@ -310,6 +328,19 @@ func (s *IntegrationTestSuite) TestNewCmdFeeGrant() {
|
||||||
),
|
),
|
||||||
false, 0, &sdk.TxResponse{},
|
false, 0, &sdk.TxResponse{},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"valid basic fee grant with granter key name",
|
||||||
|
append(
|
||||||
|
[]string{
|
||||||
|
fromName,
|
||||||
|
"cosmos16dun6ehcc86e03wreqqww89ey569wuj4em572w",
|
||||||
|
fmt.Sprintf("--%s=%s", cli.FlagSpendLimit, "100stake"),
|
||||||
|
fmt.Sprintf("--%s=%s", flags.FlagFrom, fromName),
|
||||||
|
},
|
||||||
|
commonFlags...,
|
||||||
|
),
|
||||||
|
false, 0, &sdk.TxResponse{},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"valid basic fee grant with amino",
|
"valid basic fee grant with amino",
|
||||||
append(
|
append(
|
||||||
|
|
Loading…
Reference in New Issue