mirror of
https://github.com/0glabs/0g-chain.git
synced 2024-12-26 08:15:19 +00:00
54 lines
1.4 KiB
Go
54 lines
1.4 KiB
Go
|
package keeper_test
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
"testing"
|
||
|
|
||
|
"github.com/stretchr/testify/suite"
|
||
|
|
||
|
"github.com/0glabs/0g-chain/x/committee/testutil"
|
||
|
"github.com/0glabs/0g-chain/x/committee/types"
|
||
|
)
|
||
|
|
||
|
type grpcQueryTestSuite struct {
|
||
|
testutil.Suite
|
||
|
}
|
||
|
|
||
|
func (suite *grpcQueryTestSuite) SetupTest() {
|
||
|
suite.Suite.SetupTest()
|
||
|
}
|
||
|
|
||
|
func (suite *grpcQueryTestSuite) TestVote() {
|
||
|
ctx, keeper, queryClient := suite.Ctx, suite.Keeper, suite.QueryClient
|
||
|
vote := types.Vote{
|
||
|
ProposalID: 1,
|
||
|
Voter: suite.Addresses[0],
|
||
|
VoteType: types.VOTE_TYPE_ABSTAIN,
|
||
|
}
|
||
|
keeper.SetVote(ctx, vote)
|
||
|
|
||
|
req := types.QueryVoteRequest{
|
||
|
ProposalId: vote.ProposalID,
|
||
|
Voter: vote.Voter.String(),
|
||
|
}
|
||
|
res, err := queryClient.Vote(context.Background(), &req)
|
||
|
suite.Require().NoError(err)
|
||
|
suite.Require().Equal(vote.ProposalID, res.ProposalID)
|
||
|
suite.Require().Equal(vote.VoteType, res.VoteType)
|
||
|
suite.Require().Equal(vote.Voter.String(), res.Voter)
|
||
|
|
||
|
queryRes, err := queryClient.Votes(context.Background(), &types.QueryVotesRequest{
|
||
|
ProposalId: vote.ProposalID,
|
||
|
})
|
||
|
|
||
|
suite.Require().NoError(err)
|
||
|
suite.Require().Len(queryRes.Votes, 1)
|
||
|
suite.Require().Equal(vote.ProposalID, queryRes.Votes[0].ProposalID)
|
||
|
suite.Require().Equal(vote.VoteType, queryRes.Votes[0].VoteType)
|
||
|
suite.Require().Equal(vote.Voter.String(), queryRes.Votes[0].Voter)
|
||
|
}
|
||
|
|
||
|
func TestGrpcQueryTestSuite(t *testing.T) {
|
||
|
suite.Run(t, new(grpcQueryTestSuite))
|
||
|
}
|