interop

package
v1.13.2 Latest Latest
Warning

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

Go to latest
Published: Apr 15, 2025 License: MIT Imports: 62 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type SuperSystem

type SuperSystem interface {
	L1() *geth.GethInstance
	L1GethClient() *ethclient.Client
	L1Beacon() *fakebeacon.FakeBeacon
	AdvanceL1Time(duration time.Duration)
	DisputeGameFactoryAddr() common.Address

	// Superchain level
	L2IDs() []string
	Supervisor() *supervisor.SupervisorService
	Batcher(network string) *bss.BatcherService
	Proposer(network string) *l2os.ProposerService
	AddUser(username string)
	SupervisorClient() *sources.SupervisorClient
	DependencySet() *depset.StaticConfigDependencySet

	// L2 client specific
	L2GethEndpoint(id string, name string) endpoint.RPC
	L2GethClient(network string, node string) *ethclient.Client
	L2RollupEndpoint(network string, node string) endpoint.RPC
	L2RollupClient(network string, node string) *sources.RollupClient
	SendL2Tx(network string, node string, username string, applyTxOpts helpers.TxOptsFn) *types.Receipt
	EmitData(ctx context.Context, network string, node string, username string, data string) *types.Receipt
	AddNode(network string, nodeName string)

	// L2 level
	ChainID(network string) *big.Int
	RollupConfig(network string) *rollup.Config
	L2Genesis(network string) *core.Genesis
	UserKey(nework, username string) ecdsa.PrivateKey
	L2OperatorKey(network string, role devkeys.ChainOperatorRole) ecdsa.PrivateKey
	Address(network string, username string) common.Address
	Contract(network string, contractName string) interface{}
	DeployEmitterContract(ctx context.Context, network string, username string) common.Address
	ValidateMessage(
		ctx context.Context,
		id string,
		sender string,
		msgIdentifier supervisortypes.Identifier,
		msgHash [32]byte,
		expectedError error,
	) (*types.Receipt, error)
}

SuperSystem is an interface for the system (collection of connected resources) it provides a way to get the resources for a network by network ID and provides a way to get the list of network IDs this is useful for testing multiple network backends, for example, interopE2ESystem is the default implementation, but a shim to kurtosis or another testing framework could be implemented

func NewSuperSystem

NewSuperSystem creates a new SuperSystem from a recipe. It creates an interopE2ESystem.

type SuperSystemConfig added in v1.9.5

type SuperSystemConfig struct {
	SupportTimeTravel bool
	// contains filtered or unexported fields
}

type WorldResourcePaths added in v1.12.0

type WorldResourcePaths struct {
	FoundryArtifacts string
	SourceMap        string
}

Jump to

Keyboard shortcuts

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