Implement Proposal Proposer client interfaces (#3184)
This commit is contained in:
committed by
Jack Zampolin
parent
2ce8722318
commit
b0662aa4f6
@@ -566,10 +566,9 @@ func TestSubmitProposal(t *testing.T) {
|
||||
proposal := getProposal(t, port, proposalID)
|
||||
require.Equal(t, "Test", proposal.GetTitle())
|
||||
|
||||
// query tx
|
||||
txs := getTransactions(t, port, fmt.Sprintf("action=submit_proposal&proposer=%s", addr))
|
||||
require.Len(t, txs, 1)
|
||||
require.Equal(t, resultTx.Height, txs[0].Height)
|
||||
proposer := getProposer(t, port, proposalID)
|
||||
require.Equal(t, addr.String(), proposer.Proposer)
|
||||
require.Equal(t, proposalID, proposer.ProposalID)
|
||||
}
|
||||
|
||||
func TestDeposit(t *testing.T) {
|
||||
|
||||
@@ -1307,6 +1307,28 @@ paths:
|
||||
description: Invalid proposal id
|
||||
500:
|
||||
description: Internal Server Error
|
||||
/gov/proposals/{proposalId}/proposer:
|
||||
get:
|
||||
summary: Query proposer
|
||||
description: Query for the proposer for a proposal
|
||||
produces:
|
||||
- application/json
|
||||
tags:
|
||||
- ICS22
|
||||
parameters:
|
||||
- type: string
|
||||
name: proposalId
|
||||
required: true
|
||||
in: path
|
||||
responses:
|
||||
200:
|
||||
description: OK
|
||||
schema:
|
||||
$ref: "#/definitions/Proposer"
|
||||
400:
|
||||
description: Invalid proposal ID
|
||||
500:
|
||||
description: Internal Server Error
|
||||
/gov/proposals/{proposalId}/deposits:
|
||||
get:
|
||||
summary: Query deposits
|
||||
@@ -2268,6 +2290,13 @@ definitions:
|
||||
$ref: "#/definitions/Coin"
|
||||
voting_start_time:
|
||||
type: string
|
||||
Proposer:
|
||||
type: object
|
||||
properties:
|
||||
proposal_id:
|
||||
type: integer
|
||||
proposer:
|
||||
type: string
|
||||
Deposit:
|
||||
type: object
|
||||
properties:
|
||||
|
||||
@@ -15,13 +15,14 @@ import (
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/tendermint/tendermint/crypto/secp256k1"
|
||||
ctypes "github.com/tendermint/tendermint/rpc/core/types"
|
||||
|
||||
cryptoKeys "github.com/cosmos/cosmos-sdk/crypto/keys"
|
||||
authrest "github.com/cosmos/cosmos-sdk/x/auth/client/rest"
|
||||
"github.com/cosmos/cosmos-sdk/x/gov"
|
||||
"github.com/cosmos/cosmos-sdk/x/slashing"
|
||||
stakeTypes "github.com/cosmos/cosmos-sdk/x/stake/types"
|
||||
"github.com/tendermint/tendermint/crypto/secp256k1"
|
||||
ctypes "github.com/tendermint/tendermint/rpc/core/types"
|
||||
|
||||
"github.com/cosmos/cosmos-sdk/client"
|
||||
"github.com/cosmos/cosmos-sdk/client/keys"
|
||||
@@ -35,6 +36,7 @@ import (
|
||||
"github.com/cosmos/cosmos-sdk/tests"
|
||||
sdk "github.com/cosmos/cosmos-sdk/types"
|
||||
"github.com/cosmos/cosmos-sdk/x/auth"
|
||||
gcutils "github.com/cosmos/cosmos-sdk/x/gov/client/utils"
|
||||
"github.com/cosmos/cosmos-sdk/x/stake"
|
||||
|
||||
"github.com/spf13/viper"
|
||||
@@ -1249,6 +1251,18 @@ func getVote(t *testing.T, port string, proposalID uint64, voterAddr sdk.AccAddr
|
||||
return vote
|
||||
}
|
||||
|
||||
// GET /gov/proposals/{proposalId}/proposer
|
||||
func getProposer(t *testing.T, port string, proposalID uint64) gcutils.Proposer {
|
||||
res, body := Request(t, port, "GET", fmt.Sprintf("/gov/proposals/%d/proposer", proposalID), nil)
|
||||
require.Equal(t, http.StatusOK, res.StatusCode, body)
|
||||
|
||||
var proposer gcutils.Proposer
|
||||
err := cdc.UnmarshalJSON([]byte(body), &proposer)
|
||||
|
||||
require.Nil(t, err)
|
||||
return proposer
|
||||
}
|
||||
|
||||
// GET /gov/parameters/deposit Query governance deposit parameters
|
||||
func getDepositParam(t *testing.T, port string) gov.DepositParams {
|
||||
res, body := Request(t, port, "GET", "/gov/parameters/deposit", nil)
|
||||
|
||||
Reference in New Issue
Block a user