Documentation
¶
Overview ¶
Copyright (C) 2019-2025, Ava Labs, Inc. All rights reserved. See the file LICENSE for licensing terms.
Copyright (C) 2019-2025, Ava Labs, Inc. All rights reserved. See the file LICENSE for licensing terms.
Index ¶
- Variables
- func ForkToRules(fork upgradetest.Fork) *extras.Rules
- func GenesisJSON(cfg *params.ChainConfig) string
- func NewPrefundedGenesis(balance int, addresses ...common.Address) *core.Genesis
- func NewTestGenesis(cfg *params.ChainConfig) *core.Genesis
- func OverrideSchemeConfig(scheme string, configJSON string) (string, error)
- func ResetMetrics(snowCtx *snow.Context)
- func SetupGenesis(t *testing.T, fork upgradetest.Fork) (*snow.Context, *prefixdb.Database, []byte, *avalancheatomic.Memory)
- func SkipStateSyncTest(t *testing.T, testSetup *SyncTestSetup)
- func StateSyncFromScratchExceedParentTest(t *testing.T, testSetup *SyncTestSetup)
- func StateSyncFromScratchTest(t *testing.T, testSetup *SyncTestSetup)
- func StateSyncToggleEnabledToDisabledTest(t *testing.T, testSetup *SyncTestSetup)
- func VMShutdownWhileSyncingTest(t *testing.T, testSetup *SyncTestSetup)
- type SyncTestParams
- type SyncTestSetup
- type SyncVMSetup
- type SyncerVMTest
- type TestVMConfig
- type TestVMSuite
Constants ¶
This section is empty.
Variables ¶
var ( TestKeys = secp256k1.TestKeys()[:3] TestEthAddrs []common.Address // testEthAddrs[i] corresponds to testKeys[i] TestShortIDAddrs []ids.ShortID InitialBaseFee = big.NewInt(ap3.InitialBaseFee) InitialFund = new(big.Int).Mul(big.NewInt(params.Ether), big.NewInt(10)) ForkToChainConfig = map[upgradetest.Fork]*params.ChainConfig{ upgradetest.NoUpgrades: params.TestLaunchConfig, upgradetest.ApricotPhase1: params.TestApricotPhase1Config, upgradetest.ApricotPhase2: params.TestApricotPhase2Config, upgradetest.ApricotPhase3: params.TestApricotPhase3Config, upgradetest.ApricotPhase4: params.TestApricotPhase4Config, upgradetest.ApricotPhase5: params.TestApricotPhase5Config, upgradetest.ApricotPhasePre6: params.TestApricotPhasePre6Config, upgradetest.ApricotPhase6: params.TestApricotPhase6Config, upgradetest.ApricotPhasePost6: params.TestApricotPhasePost6Config, upgradetest.Banff: params.TestBanffChainConfig, upgradetest.Cortina: params.TestCortinaChainConfig, upgradetest.Durango: params.TestDurangoChainConfig, upgradetest.Etna: params.TestEtnaChainConfig, upgradetest.Fortuna: params.TestFortunaChainConfig, upgradetest.Granite: params.TestGraniteChainConfig, } )
var Schemes = []string{rawdb.HashScheme, customrawdb.FirewoodScheme}
var SyncerVMTests = []SyncerVMTest{ { Name: "SkipStateSyncTest", TestFunc: SkipStateSyncTest, }, { Name: "StateSyncFromScratchTest", TestFunc: StateSyncFromScratchTest, }, { Name: "StateSyncFromScratchExceedParentTest", TestFunc: StateSyncFromScratchExceedParentTest, }, { Name: "StateSyncToggleEnabledToDisabledTest", TestFunc: StateSyncToggleEnabledToDisabledTest, }, { Name: "VMShutdownWhileSyncingTest", TestFunc: VMShutdownWhileSyncingTest, }, }
Functions ¶
func ForkToRules ¶
func ForkToRules(fork upgradetest.Fork) *extras.Rules
func GenesisJSON ¶
func GenesisJSON(cfg *params.ChainConfig) string
GenesisJSON returns the JSON representation of the genesis block for the given chain configuration, with pre-funded accounts.
func NewPrefundedGenesis ¶
func NewTestGenesis ¶
func NewTestGenesis(cfg *params.ChainConfig) *core.Genesis
func OverrideSchemeConfig ¶
func ResetMetrics ¶
ResetMetrics resets the vm avalanchego metrics, and allows for the VM to be re-initialized in tests.
func SetupGenesis ¶
func SetupGenesis( t *testing.T, fork upgradetest.Fork, ) (*snow.Context, *prefixdb.Database, []byte, *avalancheatomic.Memory, )
SetupGenesis sets up the genesis
func SkipStateSyncTest ¶
func SkipStateSyncTest(t *testing.T, testSetup *SyncTestSetup)
func StateSyncFromScratchExceedParentTest ¶
func StateSyncFromScratchExceedParentTest(t *testing.T, testSetup *SyncTestSetup)
func StateSyncFromScratchTest ¶
func StateSyncFromScratchTest(t *testing.T, testSetup *SyncTestSetup)
func StateSyncToggleEnabledToDisabledTest ¶
func StateSyncToggleEnabledToDisabledTest(t *testing.T, testSetup *SyncTestSetup)
func VMShutdownWhileSyncingTest ¶
func VMShutdownWhileSyncingTest(t *testing.T, testSetup *SyncTestSetup)
Types ¶
type SyncTestParams ¶
type SyncTestParams struct {
StateSyncMinBlocks uint64
SyncableInterval uint64
SyncMode block.StateSyncMode
// contains filtered or unexported fields
}
SyncTestParams contains both the actual VMs as well as the parameters with the expected output.
type SyncTestSetup ¶
type SyncTestSetup struct {
NewVM func() (extension.InnerVM, dummy.ConsensusCallbacks) // should not be initialized
AfterInit func(t *testing.T, testParams SyncTestParams, vmSetup SyncVMSetup, isServer bool)
GenFn func(i int, vm extension.InnerVM, gen *core.BlockGen)
ExtraSyncerVMTest func(t *testing.T, syncerVM SyncVMSetup)
}
type SyncVMSetup ¶
type SyncVMSetup struct {
VM extension.InnerVM
SnowCtx *snow.Context
ConsensusCallbacks dummy.ConsensusCallbacks
DB avalanchedatabase.Database
AtomicMemory *avalancheatomic.Memory
AppSender *enginetest.Sender
}
type SyncerVMTest ¶
type SyncerVMTest struct {
Name string
TestFunc func(
t *testing.T,
testSetup *SyncTestSetup,
)
}
type TestVMConfig ¶
type TestVMSuite ¶
type TestVMSuite struct {
VM commoneng.VM
DB *prefixdb.Database
AtomicMemory *avalancheatomic.Memory
AppSender *enginetest.Sender
Ctx *snow.Context
}
func SetupTestVM ¶
func SetupTestVM(t *testing.T, vm commoneng.VM, config TestVMConfig) *TestVMSuite
SetupTestVM initializes a VM for testing. It sets up the genesis and returns the issuer channel, database, atomic memory, app sender, and context. Expects the passed VM to be a uninitialized VM.