package blockchain
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
bcproto "github.com/tendermint/tendermint/proto/blockchain"
|
|
)
|
|
|
|
func TestBcBlockRequestMessageValidateBasic(t *testing.T) {
|
|
testCases := []struct {
|
|
testName string
|
|
requestHeight int64
|
|
expectErr bool
|
|
}{
|
|
{"Valid Request Message", 0, false},
|
|
{"Valid Request Message", 1, false},
|
|
{"Invalid Request Message", -1, true},
|
|
}
|
|
|
|
for _, tc := range testCases {
|
|
tc := tc
|
|
t.Run(tc.testName, func(t *testing.T) {
|
|
request := bcproto.BlockRequest{Height: tc.requestHeight}
|
|
assert.Equal(t, tc.expectErr, ValidateMsg(&request) != nil, "Validate Basic had an unexpected result")
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestBcNoBlockResponseMessageValidateBasic(t *testing.T) {
|
|
testCases := []struct {
|
|
testName string
|
|
nonResponseHeight int64
|
|
expectErr bool
|
|
}{
|
|
{"Valid Non-Response Message", 0, false},
|
|
{"Valid Non-Response Message", 1, false},
|
|
{"Invalid Non-Response Message", -1, true},
|
|
}
|
|
|
|
for _, tc := range testCases {
|
|
tc := tc
|
|
t.Run(tc.testName, func(t *testing.T) {
|
|
nonResponse := bcproto.NoBlockResponse{Height: tc.nonResponseHeight}
|
|
assert.Equal(t, tc.expectErr, ValidateMsg(&nonResponse) != nil, "Validate Basic had an unexpected result")
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestBcStatusRequestMessageValidateBasic(t *testing.T) {
|
|
testCases := []struct {
|
|
testName string
|
|
requestHeight int64
|
|
expectErr bool
|
|
}{
|
|
{"Valid Request Message", 0, false},
|
|
{"Valid Request Message", 1, false},
|
|
{"Invalid Request Message", -1, true},
|
|
}
|
|
|
|
for _, tc := range testCases {
|
|
tc := tc
|
|
t.Run(tc.testName, func(t *testing.T) {
|
|
request := bcproto.StatusRequest{Height: tc.requestHeight}
|
|
assert.Equal(t, tc.expectErr, ValidateMsg(&request) != nil, "Validate Basic had an unexpected result")
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestBcStatusResponseMessageValidateBasic(t *testing.T) {
|
|
testCases := []struct {
|
|
testName string
|
|
responseHeight int64
|
|
expectErr bool
|
|
}{
|
|
{"Valid Response Message", 0, false},
|
|
{"Valid Response Message", 1, false},
|
|
{"Invalid Response Message", -1, true},
|
|
}
|
|
|
|
for _, tc := range testCases {
|
|
tc := tc
|
|
t.Run(tc.testName, func(t *testing.T) {
|
|
response := bcproto.StatusResponse{Height: tc.responseHeight}
|
|
assert.Equal(t, tc.expectErr, ValidateMsg(&response) != nil, "Validate Basic had an unexpected result")
|
|
})
|
|
}
|
|
}
|