Files
Sam LiokumovichandGitHub c4fde2c539 Fuzz Network Test Framework (#326)
* add fuzz/random testing framework functionality

* small test fix

* uncomment

* initial pass over review, some nits some important

* close file descriptor on test end

* error on failed verification(certain failures)

* increasing node id numbers

* use copy block, simplify

* remove logs

* logic for purging

* comment

* lint

* readd logs

* silence logger
2026-03-20 14:07:59 +01:00

50 lines
980 B
Go

// Copyright (C) 2019-2025, Ava Labs, Inc. All rights reserved.
// See the file LICENSE for licensing terms.
package random_network
import (
"testing"
"github.com/stretchr/testify/require"
)
func TestCreateNewTX(t *testing.T) {
tx := CreateNewTX()
require.NotNil(t, tx)
var zero txID
require.NotEqual(t, zero, tx.ID)
}
func TestTXSerialize(t *testing.T) {
tx := CreateNewTX()
b, err := tx.Bytes()
require.NoError(t, err)
require.NotEmpty(t, b)
tx2, err := TxFromBytes(b)
require.NoError(t, err)
require.Equal(t, tx, tx2)
}
func TestTXSerializeWithShouldFailVerification(t *testing.T) {
tx := CreateNewTX()
tx.SetShouldFailVerification()
b, err := tx.Bytes()
require.NoError(t, err)
require.NotEmpty(t, b)
tx2, err := TxFromBytes(b)
require.NoError(t, err)
require.True(t, tx2.shouldFailVerification)
require.Equal(t, tx, tx2)
}
func TestTxFromBytesInvalid(t *testing.T) {
_, err := TxFromBytes([]byte{0x01, 0x02, 0x03})
require.Error(t, err)
}