mirror of https://github.com/poanetwork/gecko.git
46 lines
1.2 KiB
Go
46 lines
1.2 KiB
Go
// (c) 2019-2020, Ava Labs, Inc. All rights reserved.
|
|
// See the file LICENSE for licensing terms.
|
|
|
|
package missing
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/ava-labs/gecko/ids"
|
|
"github.com/ava-labs/gecko/snow/choices"
|
|
)
|
|
|
|
func TestMissingBlock(t *testing.T) {
|
|
id := ids.NewID([32]byte{255})
|
|
mb := Block{BlkID: id}
|
|
|
|
if blkID := mb.ID(); !blkID.Equals(id) {
|
|
t.Fatalf("missingBlock.ID returned %s, expected %s", blkID, id)
|
|
} else if status := mb.Status(); status != choices.Unknown {
|
|
t.Fatalf("missingBlock.Status returned %s, expected %s", status, choices.Unknown)
|
|
} else if parent := mb.Parent(); parent != nil {
|
|
t.Fatalf("missingBlock.Parent returned %v, expected %v", parent, nil)
|
|
} else if err := mb.Verify(); err == nil {
|
|
t.Fatalf("missingBlock.Verify returned nil, expected an error")
|
|
} else if bytes := mb.Bytes(); bytes != nil {
|
|
t.Fatalf("missingBlock.Bytes returned %v, expected %v", bytes, nil)
|
|
}
|
|
|
|
func() {
|
|
defer func() {
|
|
if r := recover(); r == nil {
|
|
t.Fatalf("Should have panicked on accept")
|
|
}
|
|
}()
|
|
mb.Accept()
|
|
}()
|
|
func() {
|
|
defer func() {
|
|
if r := recover(); r == nil {
|
|
t.Fatalf("Should have panicked on reject")
|
|
}
|
|
}()
|
|
mb.Reject()
|
|
}()
|
|
}
|