Documentation ¶
Index ¶
- func FakeGenesis(l1 rune, l2 rune, l1GenesisNumber int) rollup.Genesis
- func GenerateDeposit(sourceHash common.Hash, rng *rand.Rand) *types.DepositTx
- func GenerateLog(addr common.Address, topics []common.Hash, data []byte) *types.Log
- func MakeBlockInfo(fn func(l *MockBlockInfo)) func(rng *rand.Rand) *MockBlockInfo
- func NextRandomL2Ref(rng *rand.Rand, l2BlockTime uint64, parent eth.L2BlockRef, origin eth.BlockID) eth.L2BlockRef
- func NextRandomRef(rng *rand.Rand, parent eth.L1BlockRef) eth.L1BlockRef
- func RandomAddress(rng *rand.Rand) (out common.Address)
- func RandomBlockID(rng *rand.Rand) eth.BlockID
- func RandomBlockRef(rng *rand.Rand) eth.L1BlockRef
- func RandomData(rng *rand.Rand, size int) []byte
- func RandomETH(rng *rand.Rand, max int64) *big.Int
- func RandomHash(rng *rand.Rand) (out common.Hash)
- func RandomKey() *ecdsa.PrivateKey
- func RandomL2BlockRef(rng *rand.Rand) eth.L2BlockRef
- type FakeChainSource
- func (m *FakeChainSource) AdvanceL1() eth.L1BlockRef
- func (m *FakeChainSource) ForkchoiceUpdate(ctx context.Context, state *eth.ForkchoiceState, attr *eth.PayloadAttributes) (*eth.ForkchoiceUpdatedResult, error)
- func (m *FakeChainSource) L1BlockRefByHash(ctx context.Context, l1Hash common.Hash) (eth.L1BlockRef, error)
- func (m *FakeChainSource) L1BlockRefByLabel(ctx context.Context, label eth.BlockLabel) (eth.L1BlockRef, error)
- func (m *FakeChainSource) L1BlockRefByNumber(ctx context.Context, l1Num uint64) (eth.L1BlockRef, error)
- func (m *FakeChainSource) L1Head() eth.L1BlockRef
- func (m *FakeChainSource) L1Range(ctx context.Context, base eth.BlockID, max uint64) ([]eth.BlockID, error)
- func (m *FakeChainSource) L2BlockRefByHash(ctx context.Context, l2Hash common.Hash) (eth.L2BlockRef, error)
- func (m *FakeChainSource) L2BlockRefByLabel(ctx context.Context, label eth.BlockLabel) (eth.L2BlockRef, error)
- func (m *FakeChainSource) L2BlockRefByNumber(ctx context.Context, l2Num *big.Int) (eth.L2BlockRef, error)
- func (m *FakeChainSource) ReorgL1()
- func (m *FakeChainSource) SetL2Head(head int) eth.L2BlockRef
- type MockBlockInfo
- func (l *MockBlockInfo) BaseFee() *big.Int
- func (l *MockBlockInfo) BlockRef() eth.L1BlockRef
- func (l *MockBlockInfo) Coinbase() common.Address
- func (l *MockBlockInfo) Hash() common.Hash
- func (l *MockBlockInfo) ID() eth.BlockID
- func (l *MockBlockInfo) MixDigest() common.Hash
- func (l *MockBlockInfo) NumberU64() uint64
- func (l *MockBlockInfo) ParentHash() common.Hash
- func (l *MockBlockInfo) ReceiptHash() common.Hash
- func (l *MockBlockInfo) Root() common.Hash
- func (l *MockBlockInfo) Time() uint64
- type MockEngine
- func (m *MockEngine) ExpectForkchoiceUpdate(state *eth.ForkchoiceState, attr *eth.PayloadAttributes, ...)
- func (m *MockEngine) ExpectGetPayload(payloadId eth.PayloadID, payload *eth.ExecutionPayload, err error)
- func (m *MockEngine) ExpectNewPayload(payload *eth.ExecutionPayload, result *eth.PayloadStatusV1, err error)
- func (m *MockEngine) ForkchoiceUpdate(ctx context.Context, state *eth.ForkchoiceState, attr *eth.PayloadAttributes) (*eth.ForkchoiceUpdatedResult, error)
- func (m *MockEngine) GetPayload(ctx context.Context, payloadId eth.PayloadID) (*eth.ExecutionPayload, error)
- func (m *MockEngine) NewPayload(ctx context.Context, payload *eth.ExecutionPayload) (*eth.PayloadStatusV1, error)
- type MockEthClient
- func (m *MockEthClient) ExpectFetch(hash common.Hash, info eth.BlockInfo, transactions types.Transactions, ...)
- func (m *MockEthClient) ExpectGetProof(address common.Address, blockTag string, result *eth.AccountResult, err error)
- func (m *MockEthClient) ExpectInfoAndTxsByHash(hash common.Hash, info eth.BlockInfo, transactions types.Transactions, ...)
- func (m *MockEthClient) ExpectInfoAndTxsByLabel(label eth.BlockLabel, info eth.BlockInfo, transactions types.Transactions, ...)
- func (m *MockEthClient) ExpectInfoAndTxsByNumber(number uint64, info eth.BlockInfo, transactions types.Transactions, err error)
- func (m *MockEthClient) ExpectInfoByHash(hash common.Hash, info eth.BlockInfo, err error)
- func (m *MockEthClient) ExpectInfoByLabel(label eth.BlockLabel, info eth.BlockInfo, err error)
- func (m *MockEthClient) ExpectInfoByNumber(number uint64, info eth.BlockInfo, err error)
- func (m *MockEthClient) ExpectInfoByRpcNumber(num rpc.BlockNumber, info eth.BlockInfo, err error)
- func (m *MockEthClient) ExpectPayloadByHash(hash common.Hash, payload *eth.ExecutionPayload, err error)
- func (m *MockEthClient) ExpectPayloadByLabel(label eth.BlockLabel, payload *eth.ExecutionPayload, err error)
- func (m *MockEthClient) ExpectPayloadByNumber(hash common.Hash, payload *eth.ExecutionPayload, err error)
- func (m *MockEthClient) Fetch(ctx context.Context, blockHash common.Hash) (eth.BlockInfo, types.Transactions, eth.ReceiptsFetcher, error)
- func (m *MockEthClient) GetProof(ctx context.Context, address common.Address, blockTag string) (*eth.AccountResult, error)
- func (m *MockEthClient) InfoAndTxsByHash(ctx context.Context, hash common.Hash) (eth.BlockInfo, types.Transactions, error)
- func (m *MockEthClient) InfoAndTxsByLabel(ctx context.Context, label eth.BlockLabel) (eth.BlockInfo, types.Transactions, error)
- func (m *MockEthClient) InfoAndTxsByNumber(ctx context.Context, number uint64) (eth.BlockInfo, types.Transactions, error)
- func (m *MockEthClient) InfoByHash(ctx context.Context, hash common.Hash) (eth.BlockInfo, error)
- func (m *MockEthClient) InfoByLabel(ctx context.Context, label eth.BlockLabel) (eth.BlockInfo, error)
- func (m *MockEthClient) InfoByNumber(ctx context.Context, number uint64) (eth.BlockInfo, error)
- func (m *MockEthClient) InfoByRpcNumber(ctx context.Context, num rpc.BlockNumber) (eth.BlockInfo, error)
- func (m *MockEthClient) PayloadByHash(ctx context.Context, hash common.Hash) (*eth.ExecutionPayload, error)
- func (m *MockEthClient) PayloadByLabel(ctx context.Context, label eth.BlockLabel) (*eth.ExecutionPayload, error)
- func (m *MockEthClient) PayloadByNumber(ctx context.Context, n uint64) (*eth.ExecutionPayload, error)
- type MockL1Source
- func (m *MockL1Source) ExpectL1BlockRefByHash(hash common.Hash, ref eth.L1BlockRef, err error)
- func (m *MockL1Source) ExpectL1BlockRefByLabel(label eth.BlockLabel, ref eth.L1BlockRef, err error)
- func (m *MockL1Source) ExpectL1BlockRefByNumber(num uint64, ref eth.L1BlockRef, err error)
- func (m *MockL1Source) L1BlockRefByHash(ctx context.Context, hash common.Hash) (eth.L1BlockRef, error)
- func (m *MockL1Source) L1BlockRefByLabel(ctx context.Context, label eth.BlockLabel) (eth.L1BlockRef, error)
- func (m *MockL1Source) L1BlockRefByNumber(ctx context.Context, num uint64) (eth.L1BlockRef, error)
- type MockL2Client
- func (m *MockL2Client) ExpectL2BlockRefByHash(hash common.Hash, ref eth.L2BlockRef, err error)
- func (m *MockL2Client) ExpectL2BlockRefByLabel(label eth.BlockLabel, ref eth.L2BlockRef, err error)
- func (m *MockL2Client) ExpectL2BlockRefByNumber(num uint64, ref eth.L2BlockRef, err error)
- func (c *MockL2Client) L2BlockRefByHash(ctx context.Context, hash common.Hash) (eth.L2BlockRef, error)
- func (c *MockL2Client) L2BlockRefByLabel(ctx context.Context, label eth.BlockLabel) (eth.L2BlockRef, error)
- func (c *MockL2Client) L2BlockRefByNumber(ctx context.Context, num uint64) (eth.L2BlockRef, error)
- type TestID
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GenerateDeposit ¶
Returns a DepositEvent customized on the basis of the id parameter.
func GenerateLog ¶
Generates an EVM log entry with the given topics and data.
func MakeBlockInfo ¶
func MakeBlockInfo(fn func(l *MockBlockInfo)) func(rng *rand.Rand) *MockBlockInfo
func NextRandomL2Ref ¶
func NextRandomL2Ref(rng *rand.Rand, l2BlockTime uint64, parent eth.L2BlockRef, origin eth.BlockID) eth.L2BlockRef
func NextRandomRef ¶
func NextRandomRef(rng *rand.Rand, parent eth.L1BlockRef) eth.L1BlockRef
func RandomBlockRef ¶
func RandomBlockRef(rng *rand.Rand) eth.L1BlockRef
func RandomKey ¶
func RandomKey() *ecdsa.PrivateKey
func RandomL2BlockRef ¶
func RandomL2BlockRef(rng *rand.Rand) eth.L2BlockRef
Types ¶
type FakeChainSource ¶
type FakeChainSource struct {
// contains filtered or unexported fields
}
FakeChainSource implements the ChainSource interface with the ability to control what the head block is of the L1 and L2 chains. In addition, it enables re-orgs to easily be implemented
func NewFakeChainSource ¶
func (*FakeChainSource) AdvanceL1 ¶
func (m *FakeChainSource) AdvanceL1() eth.L1BlockRef
func (*FakeChainSource) ForkchoiceUpdate ¶
func (m *FakeChainSource) ForkchoiceUpdate(ctx context.Context, state *eth.ForkchoiceState, attr *eth.PayloadAttributes) (*eth.ForkchoiceUpdatedResult, error)
func (*FakeChainSource) L1BlockRefByHash ¶
func (m *FakeChainSource) L1BlockRefByHash(ctx context.Context, l1Hash common.Hash) (eth.L1BlockRef, error)
func (*FakeChainSource) L1BlockRefByLabel ¶
func (m *FakeChainSource) L1BlockRefByLabel(ctx context.Context, label eth.BlockLabel) (eth.L1BlockRef, error)
func (*FakeChainSource) L1BlockRefByNumber ¶
func (m *FakeChainSource) L1BlockRefByNumber(ctx context.Context, l1Num uint64) (eth.L1BlockRef, error)
func (*FakeChainSource) L1Head ¶
func (m *FakeChainSource) L1Head() eth.L1BlockRef
func (*FakeChainSource) L2BlockRefByHash ¶
func (m *FakeChainSource) L2BlockRefByHash(ctx context.Context, l2Hash common.Hash) (eth.L2BlockRef, error)
func (*FakeChainSource) L2BlockRefByLabel ¶
func (m *FakeChainSource) L2BlockRefByLabel(ctx context.Context, label eth.BlockLabel) (eth.L2BlockRef, error)
func (*FakeChainSource) L2BlockRefByNumber ¶
func (m *FakeChainSource) L2BlockRefByNumber(ctx context.Context, l2Num *big.Int) (eth.L2BlockRef, error)
func (*FakeChainSource) ReorgL1 ¶
func (m *FakeChainSource) ReorgL1()
func (*FakeChainSource) SetL2Head ¶
func (m *FakeChainSource) SetL2Head(head int) eth.L2BlockRef
type MockBlockInfo ¶
type MockBlockInfo struct { InfoHash common.Hash InfoParentHash common.Hash InfoCoinbase common.Address InfoRoot common.Hash InfoNum uint64 InfoTime uint64 InfoMixDigest [32]byte InfoBaseFee *big.Int InfoReceiptRoot common.Hash }
func RandomBlockInfo ¶
func RandomBlockInfo(rng *rand.Rand) *MockBlockInfo
func (*MockBlockInfo) BaseFee ¶
func (l *MockBlockInfo) BaseFee() *big.Int
func (*MockBlockInfo) BlockRef ¶
func (l *MockBlockInfo) BlockRef() eth.L1BlockRef
func (*MockBlockInfo) Coinbase ¶
func (l *MockBlockInfo) Coinbase() common.Address
func (*MockBlockInfo) Hash ¶
func (l *MockBlockInfo) Hash() common.Hash
func (*MockBlockInfo) ID ¶
func (l *MockBlockInfo) ID() eth.BlockID
func (*MockBlockInfo) MixDigest ¶
func (l *MockBlockInfo) MixDigest() common.Hash
func (*MockBlockInfo) NumberU64 ¶
func (l *MockBlockInfo) NumberU64() uint64
func (*MockBlockInfo) ParentHash ¶
func (l *MockBlockInfo) ParentHash() common.Hash
func (*MockBlockInfo) ReceiptHash ¶
func (l *MockBlockInfo) ReceiptHash() common.Hash
func (*MockBlockInfo) Root ¶
func (l *MockBlockInfo) Root() common.Hash
func (*MockBlockInfo) Time ¶
func (l *MockBlockInfo) Time() uint64
type MockEngine ¶
type MockEngine struct {
MockL2Client
}
func (*MockEngine) ExpectForkchoiceUpdate ¶
func (m *MockEngine) ExpectForkchoiceUpdate(state *eth.ForkchoiceState, attr *eth.PayloadAttributes, result *eth.ForkchoiceUpdatedResult, err error)
func (*MockEngine) ExpectGetPayload ¶
func (m *MockEngine) ExpectGetPayload(payloadId eth.PayloadID, payload *eth.ExecutionPayload, err error)
func (*MockEngine) ExpectNewPayload ¶
func (m *MockEngine) ExpectNewPayload(payload *eth.ExecutionPayload, result *eth.PayloadStatusV1, err error)
func (*MockEngine) ForkchoiceUpdate ¶
func (m *MockEngine) ForkchoiceUpdate(ctx context.Context, state *eth.ForkchoiceState, attr *eth.PayloadAttributes) (*eth.ForkchoiceUpdatedResult, error)
func (*MockEngine) GetPayload ¶
func (m *MockEngine) GetPayload(ctx context.Context, payloadId eth.PayloadID) (*eth.ExecutionPayload, error)
func (*MockEngine) NewPayload ¶
func (m *MockEngine) NewPayload(ctx context.Context, payload *eth.ExecutionPayload) (*eth.PayloadStatusV1, error)
type MockEthClient ¶
func (*MockEthClient) ExpectFetch ¶ added in v0.6.0
func (m *MockEthClient) ExpectFetch(hash common.Hash, info eth.BlockInfo, transactions types.Transactions, receipts types.Receipts, err error)
func (*MockEthClient) ExpectGetProof ¶
func (m *MockEthClient) ExpectGetProof(address common.Address, blockTag string, result *eth.AccountResult, err error)
func (*MockEthClient) ExpectInfoAndTxsByHash ¶
func (m *MockEthClient) ExpectInfoAndTxsByHash(hash common.Hash, info eth.BlockInfo, transactions types.Transactions, err error)
func (*MockEthClient) ExpectInfoAndTxsByLabel ¶
func (m *MockEthClient) ExpectInfoAndTxsByLabel(label eth.BlockLabel, info eth.BlockInfo, transactions types.Transactions, err error)
func (*MockEthClient) ExpectInfoAndTxsByNumber ¶
func (m *MockEthClient) ExpectInfoAndTxsByNumber(number uint64, info eth.BlockInfo, transactions types.Transactions, err error)
func (*MockEthClient) ExpectInfoByHash ¶
func (*MockEthClient) ExpectInfoByLabel ¶
func (m *MockEthClient) ExpectInfoByLabel(label eth.BlockLabel, info eth.BlockInfo, err error)
func (*MockEthClient) ExpectInfoByNumber ¶
func (m *MockEthClient) ExpectInfoByNumber(number uint64, info eth.BlockInfo, err error)
func (*MockEthClient) ExpectInfoByRpcNumber ¶ added in v0.6.0
func (m *MockEthClient) ExpectInfoByRpcNumber(num rpc.BlockNumber, info eth.BlockInfo, err error)
func (*MockEthClient) ExpectPayloadByHash ¶
func (m *MockEthClient) ExpectPayloadByHash(hash common.Hash, payload *eth.ExecutionPayload, err error)
func (*MockEthClient) ExpectPayloadByLabel ¶
func (m *MockEthClient) ExpectPayloadByLabel(label eth.BlockLabel, payload *eth.ExecutionPayload, err error)
func (*MockEthClient) ExpectPayloadByNumber ¶
func (m *MockEthClient) ExpectPayloadByNumber(hash common.Hash, payload *eth.ExecutionPayload, err error)
func (*MockEthClient) Fetch ¶ added in v0.6.0
func (m *MockEthClient) Fetch(ctx context.Context, blockHash common.Hash) (eth.BlockInfo, types.Transactions, eth.ReceiptsFetcher, error)
func (*MockEthClient) GetProof ¶
func (m *MockEthClient) GetProof(ctx context.Context, address common.Address, blockTag string) (*eth.AccountResult, error)
func (*MockEthClient) InfoAndTxsByHash ¶
func (m *MockEthClient) InfoAndTxsByHash(ctx context.Context, hash common.Hash) (eth.BlockInfo, types.Transactions, error)
func (*MockEthClient) InfoAndTxsByLabel ¶
func (m *MockEthClient) InfoAndTxsByLabel(ctx context.Context, label eth.BlockLabel) (eth.BlockInfo, types.Transactions, error)
func (*MockEthClient) InfoAndTxsByNumber ¶
func (m *MockEthClient) InfoAndTxsByNumber(ctx context.Context, number uint64) (eth.BlockInfo, types.Transactions, error)
func (*MockEthClient) InfoByHash ¶
func (*MockEthClient) InfoByLabel ¶
func (m *MockEthClient) InfoByLabel(ctx context.Context, label eth.BlockLabel) (eth.BlockInfo, error)
func (*MockEthClient) InfoByNumber ¶
func (*MockEthClient) InfoByRpcNumber ¶ added in v0.6.0
func (m *MockEthClient) InfoByRpcNumber(ctx context.Context, num rpc.BlockNumber) (eth.BlockInfo, error)
func (*MockEthClient) PayloadByHash ¶
func (m *MockEthClient) PayloadByHash(ctx context.Context, hash common.Hash) (*eth.ExecutionPayload, error)
func (*MockEthClient) PayloadByLabel ¶
func (m *MockEthClient) PayloadByLabel(ctx context.Context, label eth.BlockLabel) (*eth.ExecutionPayload, error)
func (*MockEthClient) PayloadByNumber ¶
func (m *MockEthClient) PayloadByNumber(ctx context.Context, n uint64) (*eth.ExecutionPayload, error)
type MockL1Source ¶
type MockL1Source struct {
MockEthClient
}
func (*MockL1Source) ExpectL1BlockRefByHash ¶
func (m *MockL1Source) ExpectL1BlockRefByHash(hash common.Hash, ref eth.L1BlockRef, err error)
func (*MockL1Source) ExpectL1BlockRefByLabel ¶
func (m *MockL1Source) ExpectL1BlockRefByLabel(label eth.BlockLabel, ref eth.L1BlockRef, err error)
func (*MockL1Source) ExpectL1BlockRefByNumber ¶
func (m *MockL1Source) ExpectL1BlockRefByNumber(num uint64, ref eth.L1BlockRef, err error)
func (*MockL1Source) L1BlockRefByHash ¶
func (m *MockL1Source) L1BlockRefByHash(ctx context.Context, hash common.Hash) (eth.L1BlockRef, error)
func (*MockL1Source) L1BlockRefByLabel ¶
func (m *MockL1Source) L1BlockRefByLabel(ctx context.Context, label eth.BlockLabel) (eth.L1BlockRef, error)
func (*MockL1Source) L1BlockRefByNumber ¶
func (m *MockL1Source) L1BlockRefByNumber(ctx context.Context, num uint64) (eth.L1BlockRef, error)
type MockL2Client ¶
type MockL2Client struct {
MockEthClient
}
func (*MockL2Client) ExpectL2BlockRefByHash ¶
func (m *MockL2Client) ExpectL2BlockRefByHash(hash common.Hash, ref eth.L2BlockRef, err error)
func (*MockL2Client) ExpectL2BlockRefByLabel ¶
func (m *MockL2Client) ExpectL2BlockRefByLabel(label eth.BlockLabel, ref eth.L2BlockRef, err error)
func (*MockL2Client) ExpectL2BlockRefByNumber ¶
func (m *MockL2Client) ExpectL2BlockRefByNumber(num uint64, ref eth.L2BlockRef, err error)
func (*MockL2Client) L2BlockRefByHash ¶
func (c *MockL2Client) L2BlockRefByHash(ctx context.Context, hash common.Hash) (eth.L2BlockRef, error)
func (*MockL2Client) L2BlockRefByLabel ¶
func (c *MockL2Client) L2BlockRefByLabel(ctx context.Context, label eth.BlockLabel) (eth.L2BlockRef, error)
func (*MockL2Client) L2BlockRefByNumber ¶
func (c *MockL2Client) L2BlockRefByNumber(ctx context.Context, num uint64) (eth.L2BlockRef, error)
Click to show internal directories.
Click to hide internal directories.