45 lines
978 B
Go
45 lines
978 B
Go
package mock_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
tmproto "github.com/tendermint/tendermint/proto/tendermint/types"
|
|
tmtypes "github.com/tendermint/tendermint/types"
|
|
|
|
"github.com/cosmos/cosmos-sdk/x/ibc/testing/mock"
|
|
)
|
|
|
|
const chainID = "testChain"
|
|
|
|
func TestGetPubKey(t *testing.T) {
|
|
pv := mock.NewPV()
|
|
pk, err := pv.GetPubKey()
|
|
require.NoError(t, err)
|
|
require.Equal(t, "ed25519", pk.Type())
|
|
}
|
|
|
|
func TestSignVote(t *testing.T) {
|
|
pv := mock.NewPV()
|
|
pk, _ := pv.GetPubKey()
|
|
|
|
vote := &tmproto.Vote{Height: 2}
|
|
pv.SignVote(chainID, vote)
|
|
|
|
msg := tmtypes.VoteSignBytes(chainID, vote)
|
|
ok := pk.VerifySignature(msg, vote.Signature)
|
|
require.True(t, ok)
|
|
}
|
|
|
|
func TestSignProposal(t *testing.T) {
|
|
pv := mock.NewPV()
|
|
pk, _ := pv.GetPubKey()
|
|
|
|
proposal := &tmproto.Proposal{Round: 2}
|
|
pv.SignProposal(chainID, proposal)
|
|
|
|
msg := tmtypes.ProposalSignBytes(chainID, proposal)
|
|
ok := pk.VerifySignature(msg, proposal.Signature)
|
|
require.True(t, ok)
|
|
}
|