github.com/MetalBlockchain/metalgo@v1.11.9/vms/platformvm/warp/unsigned_message_test.go (about) 1 // Copyright (C) 2019-2024, Ava Labs, Inc. All rights reserved. 2 // See the file LICENSE for licensing terms. 3 4 package warp 5 6 import ( 7 "testing" 8 9 "github.com/stretchr/testify/require" 10 11 "github.com/MetalBlockchain/metalgo/codec" 12 "github.com/MetalBlockchain/metalgo/ids" 13 "github.com/MetalBlockchain/metalgo/utils/constants" 14 ) 15 16 func TestUnsignedMessage(t *testing.T) { 17 require := require.New(t) 18 19 msg, err := NewUnsignedMessage( 20 constants.UnitTestID, 21 ids.GenerateTestID(), 22 []byte("payload"), 23 ) 24 require.NoError(err) 25 26 msgBytes := msg.Bytes() 27 msg2, err := ParseUnsignedMessage(msgBytes) 28 require.NoError(err) 29 require.Equal(msg, msg2) 30 } 31 32 func TestParseUnsignedMessageJunk(t *testing.T) { 33 require := require.New(t) 34 35 bytes := []byte{0, 1, 2, 3, 4, 5, 6, 7} 36 _, err := ParseUnsignedMessage(bytes) 37 require.ErrorIs(err, codec.ErrUnknownVersion) 38 }