2019-11-06 13:08:02 -08:00
|
|
|
package types_test
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
|
|
|
|
"github.com/stretchr/testify/require"
|
2020-01-16 13:46:51 -08:00
|
|
|
tmbytes "github.com/tendermint/tendermint/libs/bytes"
|
2019-11-06 13:08:02 -08:00
|
|
|
|
|
|
|
"github.com/cosmos/cosmos-sdk/codec"
|
|
|
|
sdk "github.com/cosmos/cosmos-sdk/types"
|
|
|
|
"github.com/cosmos/cosmos-sdk/x/evidence/exported"
|
|
|
|
"github.com/cosmos/cosmos-sdk/x/evidence/internal/types"
|
|
|
|
)
|
|
|
|
|
|
|
|
var _ exported.Evidence = (*testEvidence)(nil)
|
|
|
|
|
|
|
|
type testEvidence struct{}
|
|
|
|
|
|
|
|
func (te testEvidence) Route() string { return "" }
|
|
|
|
func (te testEvidence) Type() string { return "" }
|
|
|
|
func (te testEvidence) String() string { return "" }
|
|
|
|
func (te testEvidence) ValidateBasic() error { return nil }
|
|
|
|
func (te testEvidence) GetConsensusAddress() sdk.ConsAddress { return nil }
|
2020-01-16 13:46:51 -08:00
|
|
|
func (te testEvidence) Hash() tmbytes.HexBytes { return nil }
|
2019-11-06 13:08:02 -08:00
|
|
|
func (te testEvidence) GetHeight() int64 { return 0 }
|
|
|
|
func (te testEvidence) GetValidatorPower() int64 { return 0 }
|
|
|
|
func (te testEvidence) GetTotalPower() int64 { return 0 }
|
|
|
|
|
|
|
|
func TestCodec(t *testing.T) {
|
|
|
|
cdc := codec.New()
|
|
|
|
types.RegisterCodec(cdc)
|
|
|
|
types.RegisterEvidenceTypeCodec(testEvidence{}, "cosmos-sdk/testEvidence")
|
|
|
|
|
|
|
|
var e exported.Evidence = testEvidence{}
|
|
|
|
bz, err := cdc.MarshalBinaryBare(e)
|
|
|
|
require.NoError(t, err)
|
|
|
|
|
|
|
|
var te testEvidence
|
|
|
|
require.NoError(t, cdc.UnmarshalBinaryBare(bz, &te))
|
|
|
|
|
|
|
|
require.Panics(t, func() { types.RegisterEvidenceTypeCodec(testEvidence{}, "cosmos-sdk/testEvidence") })
|
|
|
|
}
|