|
|
- package state
-
- import (
- . "github.com/tendermint/tendermint/common"
-
- "bytes"
- "testing"
- )
-
- func randValidator() *Validator {
- return &Validator{
- Account: Account{
- Id: RandUInt64(),
- PubKey: CRandBytes(32),
- },
- BondHeight: RandUInt32(),
- UnbondHeight: RandUInt32(),
- LastCommitHeight: RandUInt32(),
- VotingPower: RandUInt64(),
- Accum: int64(RandUInt64()),
- }
- }
-
- func randValidatorSet(numValidators int) *ValidatorSet {
- validators := make([]*Validator, numValidators)
- for i := 0; i < numValidators; i++ {
- validators[i] = randValidator()
- }
- return NewValidatorSet(validators)
- }
-
- func TestCopy(t *testing.T) {
- vset := randValidatorSet(10)
- vsetHash := vset.Hash()
- if len(vsetHash) == 0 {
- t.Fatalf("ValidatorSet had unexpected zero hash")
- }
-
- vsetCopy := vset.Copy()
- vsetCopyHash := vsetCopy.Hash()
-
- if !bytes.Equal(vsetHash, vsetCopyHash) {
- t.Fatalf("ValidatorSet copy had wrong hash. Orig: %X, Copy: %X", vsetHash, vsetCopyHash)
- }
- }
|