testclients

package
v0.6.24 Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2021 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewErroring

func NewErroring(ctx context.Context,
	errorRate float64,
	next eth2client.Service,
) (eth2client.Service, error)

NewErroring creates a new Ethereum 2 client that errors at a given rate.

func NewSleepy

func NewSleepy(ctx context.Context,
	minSleep time.Duration,
	maxSleep time.Duration,
	next eth2client.Service,
) (eth2client.Service, error)

NewSleepy creates a new Ethereum 2 client that sleeps for random amount of time within a set of bounds between minSleep and maxSleep before continuing.

Types

type Erroring

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

Erroring is an Ethereum 2 client that errors at a given rate.

func (*Erroring) Address

func (s *Erroring) Address() string

Address returns the address of the client.

func (*Erroring) AggregateAndProofDomain

func (s *Erroring) AggregateAndProofDomain(ctx context.Context) (spec.DomainType, error)

AggregateAndProofDomain provides the aggregate and proof domain.

func (*Erroring) AggregateAttestation

func (s *Erroring) AggregateAttestation(ctx context.Context, slot spec.Slot, attestationDataRoot spec.Root) (*spec.Attestation, error)

AggregateAttestation fetches the aggregate attestation given an attestation.

func (*Erroring) AttestationData

func (s *Erroring) AttestationData(ctx context.Context, slot spec.Slot, committeeIndex spec.CommitteeIndex) (*spec.AttestationData, error)

AttestationData fetches the attestation data for the given slot and committee index.

func (*Erroring) AttestationPool

func (s *Erroring) AttestationPool(ctx context.Context, slot spec.Slot) ([]*spec.Attestation, error)

AttestationPool fetches the attestation pool for the given slot.

func (*Erroring) AttesterDuties

func (s *Erroring) AttesterDuties(ctx context.Context, epoch spec.Epoch, validatorIndices []spec.ValidatorIndex) ([]*api.AttesterDuty, error)

AttesterDuties obtains attester duties. If validatorIndicess is nil it will return all duties for the given epoch.

func (*Erroring) BeaconAttesterDomain

func (s *Erroring) BeaconAttesterDomain(ctx context.Context) (spec.DomainType, error)

BeaconAttesterDomain provides the beacon attester domain.

func (*Erroring) BeaconBlockHeader

func (s *Erroring) BeaconBlockHeader(ctx context.Context, blockID string) (*api.BeaconBlockHeader, error)

BeaconBlockHeader provides the block header of a given block ID.

func (*Erroring) BeaconBlockProposal

func (s *Erroring) BeaconBlockProposal(ctx context.Context, slot spec.Slot, randaoReveal spec.BLSSignature, graffiti []byte) (*spec.BeaconBlock, error)

BeaconBlockProposal fetches a proposed beacon block for signing.

func (*Erroring) BeaconProposerDomain

func (s *Erroring) BeaconProposerDomain(ctx context.Context) (spec.DomainType, error)

BeaconProposerDomain provides the beacon proposer domain.

func (*Erroring) BeaconState

func (s *Erroring) BeaconState(ctx context.Context, stateID string) (*spec.BeaconState, error)

BeaconState fetches a beacon state.

func (*Erroring) DepositDomain

func (s *Erroring) DepositDomain(ctx context.Context) (spec.DomainType, error)

DepositDomain provides the deposit domain.

func (*Erroring) Domain

func (s *Erroring) Domain(ctx context.Context, domainType spec.DomainType, epoch spec.Epoch) (spec.Domain, error)

Domain provides a domain for a given domain type at a given epoch.

func (*Erroring) EpochFromStateID

func (s *Erroring) EpochFromStateID(ctx context.Context, stateID string) (spec.Epoch, error)

EpochFromStateID converts a state ID to its epoch.

func (*Erroring) Events

func (s *Erroring) Events(ctx context.Context, topics []string, handler eth2client.EventHandlerFunc) error

Events feeds requested events with the given topics to the supplied handler.

func (*Erroring) FarFutureEpoch

func (s *Erroring) FarFutureEpoch(ctx context.Context) (spec.Epoch, error)

FarFutureEpoch provides the far future epoch of the chain.

func (*Erroring) Finality

func (s *Erroring) Finality(ctx context.Context, stateID string) (*api.Finality, error)

Finality provides the finality given a state ID.

func (*Erroring) Fork

func (s *Erroring) Fork(ctx context.Context, stateID string) (*spec.Fork, error)

Fork fetches fork information for the given state.

func (*Erroring) ForkSchedule

func (s *Erroring) ForkSchedule(ctx context.Context) ([]*spec.Fork, error)

ForkSchedule provides details of past and future changes in the chain's fork version.

func (*Erroring) Genesis

func (s *Erroring) Genesis(ctx context.Context) (*api.Genesis, error)

Genesis fetches genesis information for the chain.

func (*Erroring) GenesisTime

func (s *Erroring) GenesisTime(ctx context.Context) (time.Time, error)

GenesisTime provides the genesis time of the chain.

func (*Erroring) GenesisValidatorsRoot

func (s *Erroring) GenesisValidatorsRoot(ctx context.Context) ([]byte, error)

GenesisValidatorsRoot provides the genesis validators root of the chain.

func (*Erroring) Name

func (s *Erroring) Name() string

Name returns the name of the client implementation.

func (*Erroring) NodeSyncing

func (s *Erroring) NodeSyncing(ctx context.Context) (*api.SyncState, error)

NodeSyncing provides the state of the node's synchronization with the chain.

func (*Erroring) NodeVersion

func (s *Erroring) NodeVersion(ctx context.Context) (string, error)

NodeVersion returns a free-text string with the node version.

func (*Erroring) ProposerDuties

func (s *Erroring) ProposerDuties(ctx context.Context, epoch spec.Epoch, validatorIndices []spec.ValidatorIndex) ([]*api.ProposerDuty, error)

ProposerDuties obtains proposer duties for the given epoch. If validatorIndices is empty all duties are returned, otherwise only matching duties are returned.

func (*Erroring) PrysmAttesterDuties

func (s *Erroring) PrysmAttesterDuties(ctx context.Context, epoch spec.Epoch, validatorPubKeys []spec.BLSPubKey) ([]*api.AttesterDuty, error)

PrysmAttesterDuties obtains attester duties with prysm-specific parameters.

func (*Erroring) PrysmProposerDuties

func (s *Erroring) PrysmProposerDuties(ctx context.Context, epoch spec.Epoch, validatorPubKeys []spec.BLSPubKey) ([]*api.ProposerDuty, error)

PrysmProposerDuties obtains proposer duties with prysm-specific parameters.

func (*Erroring) PrysmValidatorBalances

func (s *Erroring) PrysmValidatorBalances(ctx context.Context, stateID string, validatorPubKeys []spec.BLSPubKey) (map[spec.ValidatorIndex]spec.Gwei, error)

PrysmValidatorBalances provides the validator balances for a given state. stateID can be a slot number or state root, or one of the special values "genesis", "head", "justified" or "finalized". validatorIDs is a list of validator indices to restrict the returned values. If no validators are supplied no filter will be applied.

func (*Erroring) RANDAODomain

func (s *Erroring) RANDAODomain(ctx context.Context) (spec.DomainType, error)

RANDAODomain provides the RANDAO domain.

func (*Erroring) SelectionProofDomain

func (s *Erroring) SelectionProofDomain(ctx context.Context) (spec.DomainType, error)

SelectionProofDomain provides the selection proof domain.

func (*Erroring) SlotDuration

func (s *Erroring) SlotDuration(ctx context.Context) (time.Duration, error)

SlotDuration provides the duration of a slot of the chain.

func (*Erroring) SlotFromStateID

func (s *Erroring) SlotFromStateID(ctx context.Context, stateID string) (spec.Slot, error)

SlotFromStateID converts a state ID to its slot.

func (*Erroring) SlotsPerEpoch

func (s *Erroring) SlotsPerEpoch(ctx context.Context) (uint64, error)

SlotsPerEpoch provides the slots per epoch of the chain.

func (*Erroring) Spec

func (s *Erroring) Spec(ctx context.Context) (map[string]interface{}, error)

Spec provides the spec information of the chain.

func (*Erroring) SubmitAggregateAttestations

func (s *Erroring) SubmitAggregateAttestations(ctx context.Context, aggregateAndProofs []*spec.SignedAggregateAndProof) error

SubmitAggregateAttestations submits aggregate attestations.

func (*Erroring) SubmitAttestations

func (s *Erroring) SubmitAttestations(ctx context.Context, attestations []*spec.Attestation) error

SubmitAttestations submits attestations.

func (*Erroring) SubmitBeaconBlock

func (s *Erroring) SubmitBeaconBlock(ctx context.Context, block *spec.SignedBeaconBlock) error

SubmitBeaconBlock submits a beacon block.

func (*Erroring) SubmitBeaconCommitteeSubscriptions

func (s *Erroring) SubmitBeaconCommitteeSubscriptions(ctx context.Context, subscriptions []*api.BeaconCommitteeSubscription) error

SubmitBeaconCommitteeSubscriptions subscribes to beacon committees.

func (*Erroring) SubmitVoluntaryExit

func (s *Erroring) SubmitVoluntaryExit(ctx context.Context, voluntaryExit *spec.SignedVoluntaryExit) error

SubmitVoluntaryExit submits a voluntary exit.

func (*Erroring) TargetAggregatorsPerCommittee

func (s *Erroring) TargetAggregatorsPerCommittee(ctx context.Context) (uint64, error)

TargetAggregatorsPerCommittee provides the target number of aggregators for each attestation committee.

func (*Erroring) ValidatorBalances

func (s *Erroring) ValidatorBalances(ctx context.Context, stateID string, validatorIndices []spec.ValidatorIndex) (map[spec.ValidatorIndex]spec.Gwei, error)

ValidatorBalances provides the validator balances for a given state. stateID can be a slot number or state root, or one of the special values "genesis", "head", "justified" or "finalized". validatorIndices is a list of validator indices to restrict the returned values. If no validators are supplied no filter will be applied.

func (*Erroring) Validators

func (s *Erroring) Validators(ctx context.Context, stateID string, validatorIndices []spec.ValidatorIndex) (map[spec.ValidatorIndex]*api.Validator, error)

Validators provides the validators, with their balance and status, for a given state. stateID can be a slot number or state root, or one of the special values "genesis", "head", "justified" or "finalized". validatorIndices is a list of validator indices to restrict the returned values. If no validators IDs are supplied no filter will be applied.

func (*Erroring) ValidatorsByPubKey

func (s *Erroring) ValidatorsByPubKey(ctx context.Context, stateID string, validatorPubKeys []spec.BLSPubKey) (map[spec.ValidatorIndex]*api.Validator, error)

ValidatorsByPubKey provides the validators, with their balance and status, for a given state. stateID can be a slot number or state root, or one of the special values "genesis", "head", "justified" or "finalized". validatorPubKeys is a list of validator public keys to restrict the returned values. If no validators public keys are supplied no filter will be applied.

func (*Erroring) VoluntaryExitDomain

func (s *Erroring) VoluntaryExitDomain(ctx context.Context) (spec.DomainType, error)

VoluntaryExitDomain provides the voluntary exit domain.

type Sleepy

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

Sleepy is an Ethereum 2 client that sleeps for a random amount of time within a set of bounds before continuing.

func (*Sleepy) Address

func (s *Sleepy) Address() string

Address returns the address of the client.

func (*Sleepy) AggregateAndProofDomain

func (s *Sleepy) AggregateAndProofDomain(ctx context.Context) (spec.DomainType, error)

AggregateAndProofDomain provides the aggregate and proof domain.

func (*Sleepy) AggregateAttestation

func (s *Sleepy) AggregateAttestation(ctx context.Context, slot spec.Slot, attestationDataRoot spec.Root) (*spec.Attestation, error)

AggregateAttestation fetches the aggregate attestation given an attestation.

func (*Sleepy) AttestationData

func (s *Sleepy) AttestationData(ctx context.Context, slot spec.Slot, committeeIndex spec.CommitteeIndex) (*spec.AttestationData, error)

AttestationData fetches the attestation data for the given slot and committee index.

func (*Sleepy) AttestationPool

func (s *Sleepy) AttestationPool(ctx context.Context, slot spec.Slot) ([]*spec.Attestation, error)

AttestationPool fetches the attestation pool for the given slot.

func (*Sleepy) AttesterDuties

func (s *Sleepy) AttesterDuties(ctx context.Context, epoch spec.Epoch, validatorIndices []spec.ValidatorIndex) ([]*api.AttesterDuty, error)

AttesterDuties obtains attester duties. If validatorIndicess is nil it will return all duties for the given epoch.

func (*Sleepy) BeaconAttesterDomain

func (s *Sleepy) BeaconAttesterDomain(ctx context.Context) (spec.DomainType, error)

BeaconAttesterDomain provides the beacon attester domain.

func (*Sleepy) BeaconBlockHeader

func (s *Sleepy) BeaconBlockHeader(ctx context.Context, blockID string) (*api.BeaconBlockHeader, error)

BeaconBlockHeader provides the block header of a given block ID.

func (*Sleepy) BeaconBlockProposal

func (s *Sleepy) BeaconBlockProposal(ctx context.Context, slot spec.Slot, randaoReveal spec.BLSSignature, graffiti []byte) (*spec.BeaconBlock, error)

BeaconBlockProposal fetches a proposed beacon block for signing.

func (*Sleepy) BeaconProposerDomain

func (s *Sleepy) BeaconProposerDomain(ctx context.Context) (spec.DomainType, error)

BeaconProposerDomain provides the beacon proposer domain.

func (*Sleepy) BeaconState

func (s *Sleepy) BeaconState(ctx context.Context, stateID string) (*spec.BeaconState, error)

BeaconState fetches a beacon state.

func (*Sleepy) DepositDomain

func (s *Sleepy) DepositDomain(ctx context.Context) (spec.DomainType, error)

DepositDomain provides the deposit domain.

func (*Sleepy) Domain

func (s *Sleepy) Domain(ctx context.Context, domainType spec.DomainType, epoch spec.Epoch) (spec.Domain, error)

Domain provides a domain for a given domain type at a given epoch.

func (*Sleepy) EpochFromStateID

func (s *Sleepy) EpochFromStateID(ctx context.Context, stateID string) (spec.Epoch, error)

EpochFromStateID converts a state ID to its epoch.

func (*Sleepy) Events

func (s *Sleepy) Events(ctx context.Context, topics []string, handler eth2client.EventHandlerFunc) error

Events feeds requested events with the given topics to the supplied handler.

func (*Sleepy) FarFutureEpoch

func (s *Sleepy) FarFutureEpoch(ctx context.Context) (spec.Epoch, error)

FarFutureEpoch provides the far future epoch of the chain.

func (*Sleepy) Finality

func (s *Sleepy) Finality(ctx context.Context, stateID string) (*api.Finality, error)

Finality provides the finality given a state ID.

func (*Sleepy) Fork

func (s *Sleepy) Fork(ctx context.Context, stateID string) (*spec.Fork, error)

Fork fetches fork information for the given state.

func (*Sleepy) ForkSchedule

func (s *Sleepy) ForkSchedule(ctx context.Context) ([]*spec.Fork, error)

ForkSchedule provides details of past and future changes in the chain's fork version.

func (*Sleepy) Genesis

func (s *Sleepy) Genesis(ctx context.Context) (*api.Genesis, error)

Genesis fetches genesis information for the chain.

func (*Sleepy) GenesisTime

func (s *Sleepy) GenesisTime(ctx context.Context) (time.Time, error)

GenesisTime provides the genesis time of the chain.

func (*Sleepy) GenesisValidatorsRoot

func (s *Sleepy) GenesisValidatorsRoot(ctx context.Context) ([]byte, error)

GenesisValidatorsRoot provides the genesis validators root of the chain.

func (*Sleepy) Name

func (s *Sleepy) Name() string

Name returns the name of the client implementation.

func (*Sleepy) NodeSyncing

func (s *Sleepy) NodeSyncing(ctx context.Context) (*api.SyncState, error)

NodeSyncing provides the state of the node's synchronization with the chain.

func (*Sleepy) NodeVersion

func (s *Sleepy) NodeVersion(ctx context.Context) (string, error)

NodeVersion returns a free-text string with the node version.

func (*Sleepy) ProposerDuties

func (s *Sleepy) ProposerDuties(ctx context.Context, epoch spec.Epoch, validatorIndices []spec.ValidatorIndex) ([]*api.ProposerDuty, error)

ProposerDuties obtains proposer duties for the given epoch. If validatorIndices is empty all duties are returned, otherwise only matching duties are returned.

func (*Sleepy) PrysmAttesterDuties

func (s *Sleepy) PrysmAttesterDuties(ctx context.Context, epoch spec.Epoch, validatorPubKeys []spec.BLSPubKey) ([]*api.AttesterDuty, error)

PrysmAttesterDuties obtains attester duties with prysm-specific parameters.

func (*Sleepy) PrysmProposerDuties

func (s *Sleepy) PrysmProposerDuties(ctx context.Context, epoch spec.Epoch, validatorPubKeys []spec.BLSPubKey) ([]*api.ProposerDuty, error)

PrysmProposerDuties obtains proposer duties with prysm-specific parameters.

func (*Sleepy) PrysmValidatorBalances

func (s *Sleepy) PrysmValidatorBalances(ctx context.Context, stateID string, validatorPubKeys []spec.BLSPubKey) (map[spec.ValidatorIndex]spec.Gwei, error)

PrysmValidatorBalances provides the validator balances for a given state. stateID can be a slot number or state root, or one of the special values "genesis", "head", "justified" or "finalized". validatorIDs is a list of validator indices to restrict the returned values. If no validators are supplied no filter will be applied.

func (*Sleepy) RANDAODomain

func (s *Sleepy) RANDAODomain(ctx context.Context) (spec.DomainType, error)

RANDAODomain provides the RANDAO domain.

func (*Sleepy) SelectionProofDomain

func (s *Sleepy) SelectionProofDomain(ctx context.Context) (spec.DomainType, error)

SelectionProofDomain provides the selection proof domain.

func (*Sleepy) SlotDuration

func (s *Sleepy) SlotDuration(ctx context.Context) (time.Duration, error)

SlotDuration provides the duration of a slot of the chain.

func (*Sleepy) SlotFromStateID

func (s *Sleepy) SlotFromStateID(ctx context.Context, stateID string) (spec.Slot, error)

SlotFromStateID converts a state ID to its slot.

func (*Sleepy) SlotsPerEpoch

func (s *Sleepy) SlotsPerEpoch(ctx context.Context) (uint64, error)

SlotsPerEpoch provides the slots per epoch of the chain.

func (*Sleepy) Spec

func (s *Sleepy) Spec(ctx context.Context) (map[string]interface{}, error)

Spec provides the spec information of the chain.

func (*Sleepy) SubmitAggregateAttestations

func (s *Sleepy) SubmitAggregateAttestations(ctx context.Context, aggregateAndProofs []*spec.SignedAggregateAndProof) error

SubmitAggregateAttestations submits aggregate attestations.

func (*Sleepy) SubmitAttestations

func (s *Sleepy) SubmitAttestations(ctx context.Context, attestations []*spec.Attestation) error

SubmitAttestations submits attestations.

func (*Sleepy) SubmitBeaconBlock

func (s *Sleepy) SubmitBeaconBlock(ctx context.Context, block *spec.SignedBeaconBlock) error

SubmitBeaconBlock submits a beacon block.

func (*Sleepy) SubmitBeaconCommitteeSubscriptions

func (s *Sleepy) SubmitBeaconCommitteeSubscriptions(ctx context.Context, subscriptions []*api.BeaconCommitteeSubscription) error

SubmitBeaconCommitteeSubscriptions subscribes to beacon committees.

func (*Sleepy) SubmitVoluntaryExit

func (s *Sleepy) SubmitVoluntaryExit(ctx context.Context, voluntaryExit *spec.SignedVoluntaryExit) error

SubmitVoluntaryExit submits a voluntary exit.

func (*Sleepy) TargetAggregatorsPerCommittee

func (s *Sleepy) TargetAggregatorsPerCommittee(ctx context.Context) (uint64, error)

TargetAggregatorsPerCommittee provides the target number of aggregators for each attestation committee.

func (*Sleepy) ValidatorBalances

func (s *Sleepy) ValidatorBalances(ctx context.Context, stateID string, validatorIndices []spec.ValidatorIndex) (map[spec.ValidatorIndex]spec.Gwei, error)

ValidatorBalances provides the validator balances for a given state. stateID can be a slot number or state root, or one of the special values "genesis", "head", "justified" or "finalized". validatorIndices is a list of validator indices to restrict the returned values. If no validators are supplied no filter will be applied.

func (*Sleepy) Validators

func (s *Sleepy) Validators(ctx context.Context, stateID string, validatorIndices []spec.ValidatorIndex) (map[spec.ValidatorIndex]*api.Validator, error)

Validators provides the validators, with their balance and status, for a given state. stateID can be a slot number or state root, or one of the special values "genesis", "head", "justified" or "finalized". validatorIndices is a list of validator indices to restrict the returned values. If no validators IDs are supplied no filter will be applied.

func (*Sleepy) ValidatorsByPubKey

func (s *Sleepy) ValidatorsByPubKey(ctx context.Context, stateID string, validatorPubKeys []spec.BLSPubKey) (map[spec.ValidatorIndex]*api.Validator, error)

ValidatorsByPubKey provides the validators, with their balance and status, for a given state. stateID can be a slot number or state root, or one of the special values "genesis", "head", "justified" or "finalized". validatorPubKeys is a list of validator public keys to restrict the returned values. If no validators public keys are supplied no filter will be applied.

func (*Sleepy) VoluntaryExitDomain

func (s *Sleepy) VoluntaryExitDomain(ctx context.Context) (spec.DomainType, error)

VoluntaryExitDomain provides the voluntary exit domain.

Jump to

Keyboard shortcuts

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