utils

package
v0.0.0-...-9e22ca1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 10, 2023 License: GPL-3.0, LGPL-3.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Timeout to boot the AvalancheGo node
	BootAvalancheNodeTimeout = 5 * time.Minute

	// Timeout for the health API to check the AvalancheGo is ready
	HealthCheckTimeout = 5 * time.Second

	DefaultLocalNodeURI = "http://127.0.0.1:9650"
)

Variables

View Source
var (
	NodeURIs = []string{DefaultLocalNodeURI, "http://127.0.0.1:9652", "http://127.0.0.1:9654", "http://127.0.0.1:9656", "http://127.0.0.1:9658"}
)

Functions

func CreateNewSubnet

func CreateNewSubnet(ctx context.Context, genesisFilePath string) string

CreateNewSubnet creates a new subnet and Subnet-EVM blockchain with the given genesis file. returns the ID of the new created blockchain.

func GetDefaultChainURI

func GetDefaultChainURI(blockchainID string) string

GetDefaultChainURI returns the default chain URI for a given blockchainID

func GetFilesAndAliases

func GetFilesAndAliases(dir string) (map[string]string, error)

GetFilesAndAliases returns a map of aliases to file paths in given [dir].

func IssueTxsToActivateProposerVMFork

func IssueTxsToActivateProposerVMFork(
	ctx context.Context, chainID *big.Int, fundedKey *ecdsa.PrivateKey,
	client ethclient.Client,
) error

IssueTxsToActivateProposerVMFork issues transactions at the current timestamp, which should be after the ProposerVM activation time (aka ApricotPhase4). This should generate a PostForkBlock because its parent block (genesis) has a timestamp (0) that is greater than or equal to the fork activation time of 0. Therefore, subsequent blocks should be built with BuildBlockWithContext.

func RegisterNodeRun

func RegisterNodeRun()

RegisterNodeRun registers a before suite that starts an AvalancheGo process to use for the e2e tests and an after suite that stops the AvalancheGo process

func RegisterPingTest

func RegisterPingTest()

func RunCommand

func RunCommand(bin string, args ...string) (*cmd.Cmd, error)

RunCommand starts the command [bin] with the given [args] and returns the command to the caller TODO cmd package mentions we can do this more efficiently with cmd.NewCmdOptions rather than looping and calling Status().

func RunHardhatTests

func RunHardhatTests(ctx context.Context, blockchainID string, execPath string, testPath string)

RunDefaultHardhatTests runs the hardhat tests in the given [testPath] on the blockchain with [blockchainID] [execPath] is the path where the test command is executed

func RunHardhatTestsCustomURI

func RunHardhatTestsCustomURI(ctx context.Context, chainURI string, execPath string, testPath string)

Types

type SubnetSuite

type SubnetSuite struct {
	// contains filtered or unexported fields
}

func CreateSubnetsSuite

func CreateSubnetsSuite(genesisFiles map[string]string) *SubnetSuite

CreateSubnetsSuite creates subnets for given [genesisFiles], and registers a before suite that starts an AvalancheGo process to use for the e2e tests. genesisFiles is a map of test aliases to genesis file paths.

func (*SubnetSuite) GetBlockchainID

func (s *SubnetSuite) GetBlockchainID(alias string) string

func (*SubnetSuite) SetBlockchainIDs

func (s *SubnetSuite) SetBlockchainIDs(blockchainIDs map[string]string)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL