diff --git a/common/ledger/blkstorage/block_serialization_test.go b/common/ledger/blkstorage/block_serialization_test.go index 3986406020e..38e4f1b0cf6 100644 --- a/common/ledger/blkstorage/block_serialization_test.go +++ b/common/ledger/blkstorage/block_serialization_test.go @@ -21,11 +21,13 @@ func TestBlockSerialization(t *testing.T) { // malformed Payload block.Data.Data[1] = protoutil.MarshalOrPanic(&common.Envelope{ - Payload: []byte("Malformed Payload"), + Signature: []byte{1, 2, 3}, + Payload: []byte("Malformed Payload"), }) // empty TxID block.Data.Data[2] = protoutil.MarshalOrPanic(&common.Envelope{ + Signature: []byte{1, 2, 3}, Payload: protoutil.MarshalOrPanic(&common.Payload{ Header: &common.Header{ ChannelHeader: protoutil.MarshalOrPanic(&common.ChannelHeader{ diff --git a/common/ledger/testutil/test_helper.go b/common/ledger/testutil/test_helper.go index 8652a1f5a56..caf94200820 100644 --- a/common/ledger/testutil/test_helper.go +++ b/common/ledger/testutil/test_helper.go @@ -243,6 +243,7 @@ func ConstructBlockWithTxidHeaderType( if err != nil { t.Fatalf("ConstructTestTransaction failed, err %s", err) } + env.Signature = []byte{1, 2, 3} envs = append(envs, env) } return NewBlock(envs, blockNum, previousHash) @@ -262,6 +263,9 @@ func ConstructBlock( if err != nil { t.Fatalf("ConstructTestTransaction failed, err %s", err) } + if !sign { + env.Signature = []byte{1, 2, 3} + } envs = append(envs, env) } return NewBlock(envs, blockNum, previousHash) diff --git a/protoutil/blockutils_test.go b/protoutil/blockutils_test.go index 9fdb711f1b0..62cfcecd239 100644 --- a/protoutil/blockutils_test.go +++ b/protoutil/blockutils_test.go @@ -12,6 +12,8 @@ import ( "math" "testing" + "github.com/pkg/errors" + "github.com/golang/protobuf/proto" cb "github.com/hyperledger/fabric-protos-go/common" "github.com/hyperledger/fabric-protos-go/msp" @@ -608,11 +610,15 @@ func TestVerifyTransactionsAreWellFormed(t *testing.T) { }, } { t.Run(tst.name, func(t *testing.T) { - err := protoutil.VerifyTransactionsAreWellFormed(tst.block.Data) - if tst.expectedError == "" { - require.NoError(t, err) + if tst.block == nil || tst.block.Data == nil { + require.Error(t, errors.New("empty block")) } else { - require.Contains(t, err.Error(), tst.expectedError) + err := protoutil.VerifyTransactionsAreWellFormed(tst.block.Data) + if tst.expectedError == "" { + require.NoError(t, err) + } else { + require.Contains(t, err.Error(), tst.expectedError) + } } }) }