The core protocol of WoopChain
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
woop/blockchain/block_test.go

30 lines
760 B

package blockchain
import (
"bytes"
"testing"
)
func TestBlockSerialize(t *testing.T) {
cbtx := NewCoinbaseTX("minh", genesisCoinbaseData, 0)
if cbtx == nil {
t.Errorf("Failed to create a coinbase transaction.")
}
block := NewGenesisBlock(cbtx, 0)
serializedValue := block.Serialize()
deserializedBlock := DeserializeBlock(serializedValue)
if block.Timestamp != deserializedBlock.Timestamp {
t.Errorf("Serialize or Deserialize incorrect at TimeStamp.")
}
if bytes.Compare(block.PrevBlockHash[:], deserializedBlock.PrevBlockHash[:]) != 0 {
t.Errorf("Serialize or Deserialize incorrect at PrevBlockHash.")
}
if bytes.Compare(block.Hash[:], deserializedBlock.Hash[:]) != 0 {
t.Errorf("Serialize or Deserialize incorrect at Hash.")
}
}