github.com/MetalBlockchain/metalgo@v1.11.9/snow/engine/avalanche/vertex/builder_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 vertex 5 6 import ( 7 "testing" 8 9 "github.com/stretchr/testify/require" 10 11 "github.com/MetalBlockchain/metalgo/ids" 12 ) 13 14 func TestBuildDuplicateTxs(t *testing.T) { 15 require := require.New(t) 16 17 chainID := ids.ID{1} 18 height := uint64(2) 19 parentIDs := []ids.ID{{4}, {5}} 20 txs := [][]byte{{6}, {6}} 21 _, err := Build( 22 chainID, 23 height, 24 parentIDs, 25 txs, 26 ) 27 require.ErrorIs(err, errInvalidTxs) 28 } 29 30 func TestBuildValid(t *testing.T) { 31 require := require.New(t) 32 33 chainID := ids.ID{1} 34 height := uint64(2) 35 parentIDs := []ids.ID{{4}, {5}} 36 txs := [][]byte{{7}, {6}} 37 vtx, err := Build( 38 chainID, 39 height, 40 parentIDs, 41 txs, 42 ) 43 require.NoError(err) 44 require.Equal(chainID, vtx.ChainID()) 45 require.Equal(height, vtx.Height()) 46 require.Equal(parentIDs, vtx.ParentIDs()) 47 require.Equal(txs, vtx.Txs()) 48 }