Documentation ¶
Overview ¶
Package validators is a generated GoMock package.
Package validators is a generated GoMock package.
Package validators is a generated GoMock package.
Package validators is a generated GoMock package.
Index ¶
- Variables
- func Add(m Manager, subnetID ids.ID, nodeID ids.NodeID, pk *bls.PublicKey, txID ids.ID, ...) error
- func AddWeight(m Manager, subnetID ids.ID, nodeID ids.NodeID, weight uint64) error
- func Contains(m Manager, subnetID ids.ID, nodeID ids.NodeID) bool
- func NodeIDs(m Manager, subnetID ids.ID) ([]ids.NodeID, error)
- func RemoveWeight(m Manager, subnetID ids.ID, nodeID ids.NodeID, weight uint64) error
- type Connector
- type GetValidatorOutput
- type Manager
- type MockManager
- type MockManagerMockRecorder
- type MockSet
- func (m *MockSet) Add(arg0 ids.NodeID, arg1 *bls.PublicKey, arg2 ids.ID, arg3 uint64) error
- func (m *MockSet) AddWeight(arg0 ids.NodeID, arg1 uint64) error
- func (m *MockSet) Contains(arg0 ids.NodeID) bool
- func (m *MockSet) EXPECT() *MockSetMockRecorder
- func (m *MockSet) Get(arg0 ids.NodeID) (*Validator, bool)
- func (m *MockSet) GetWeight(arg0 ids.NodeID) uint64
- func (m *MockSet) Len() int
- func (m *MockSet) Map() map[ids.NodeID]*GetValidatorOutput
- func (m *MockSet) PrefixedString(arg0 string) string
- func (m *MockSet) RegisterCallbackListener(arg0 SetCallbackListener)
- func (m *MockSet) RemoveWeight(arg0 ids.NodeID, arg1 uint64) error
- func (m *MockSet) Sample(arg0 int) ([]ids.NodeID, error)
- func (m *MockSet) String() string
- func (m *MockSet) SubsetWeight(arg0 set.Set[ids.NodeID]) uint64
- func (m *MockSet) Weight() uint64
- type MockSetMockRecorder
- func (mr *MockSetMockRecorder) Add(arg0, arg1, arg2, arg3 interface{}) *gomock.Call
- func (mr *MockSetMockRecorder) AddWeight(arg0, arg1 interface{}) *gomock.Call
- func (mr *MockSetMockRecorder) Contains(arg0 interface{}) *gomock.Call
- func (mr *MockSetMockRecorder) Get(arg0 interface{}) *gomock.Call
- func (mr *MockSetMockRecorder) GetWeight(arg0 interface{}) *gomock.Call
- func (mr *MockSetMockRecorder) Len() *gomock.Call
- func (mr *MockSetMockRecorder) Map() *gomock.Call
- func (mr *MockSetMockRecorder) PrefixedString(arg0 interface{}) *gomock.Call
- func (mr *MockSetMockRecorder) RegisterCallbackListener(arg0 interface{}) *gomock.Call
- func (mr *MockSetMockRecorder) RemoveWeight(arg0, arg1 interface{}) *gomock.Call
- func (mr *MockSetMockRecorder) Sample(arg0 interface{}) *gomock.Call
- func (mr *MockSetMockRecorder) String() *gomock.Call
- func (mr *MockSetMockRecorder) SubsetWeight(arg0 interface{}) *gomock.Call
- func (mr *MockSetMockRecorder) Weight() *gomock.Call
- type MockState
- func (m *MockState) EXPECT() *MockStateMockRecorder
- func (m *MockState) GetCurrentHeight(arg0 context.Context) (uint64, error)
- func (m *MockState) GetMinimumHeight(arg0 context.Context) (uint64, error)
- func (m *MockState) GetSubnetID(arg0 context.Context, arg1 ids.ID) (ids.ID, error)
- func (m *MockState) GetValidatorSet(arg0 context.Context, arg1 uint64, arg2 ids.ID) (map[ids.NodeID]*GetValidatorOutput, error)
- type MockStateMockRecorder
- func (mr *MockStateMockRecorder) GetCurrentHeight(arg0 interface{}) *gomock.Call
- func (mr *MockStateMockRecorder) GetMinimumHeight(arg0 interface{}) *gomock.Call
- func (mr *MockStateMockRecorder) GetSubnetID(arg0, arg1 interface{}) *gomock.Call
- func (mr *MockStateMockRecorder) GetValidatorSet(arg0, arg1, arg2 interface{}) *gomock.Call
- type MockSubnetConnector
- type MockSubnetConnectorMockRecorder
- type Set
- type SetCallbackListener
- type State
- type SubnetConnector
- type TestState
- func (vm *TestState) GetCurrentHeight(ctx context.Context) (uint64, error)
- func (vm *TestState) GetMinimumHeight(ctx context.Context) (uint64, error)
- func (vm *TestState) GetSubnetID(ctx context.Context, chainID ids.ID) (ids.ID, error)
- func (vm *TestState) GetValidatorSet(ctx context.Context, height uint64, subnetID ids.ID) (map[ids.NodeID]*GetValidatorOutput, error)
- type Validator
Constants ¶
This section is empty.
Variables ¶
var (
ErrMissingValidators = errors.New("missing validators")
)
Functions ¶
func Add ¶
func Add(m Manager, subnetID ids.ID, nodeID ids.NodeID, pk *bls.PublicKey, txID ids.ID, weight uint64) error
Add is a helper that fetches the validator set of [subnetID] from [m] and adds [nodeID] to the validator set. Returns an error if: - [subnetID] does not have a registered validator set in [m] - adding [nodeID] to the validator set returns an error
func AddWeight ¶
AddWeight is a helper that fetches the validator set of [subnetID] from [m] and adds [weight] to [nodeID] in the validator set. Returns an error if: - [subnetID] does not have a registered validator set in [m] - adding [weight] to [nodeID] in the validator set returns an error
func Contains ¶
Contains is a helper that fetches the validator set of [subnetID] from [m] and returns if the validator set contains [nodeID]. If [m] does not contain a validator set for [subnetID], false is returned.
func RemoveWeight ¶
RemoveWeight is a helper that fetches the validator set of [subnetID] from [m] and removes [weight] from [nodeID] in the validator set. Returns an error if: - [subnetID] does not have a registered validator set in [m] - removing [weight] from [nodeID] in the validator set returns an error
Types ¶
type Connector ¶
type Connector interface { Connected( ctx context.Context, nodeID ids.NodeID, nodeVersion *version.Application, ) error Disconnected(ctx context.Context, nodeID ids.NodeID) error }
Connector represents a handler that is called when a connection is marked as connected or disconnected
type GetValidatorOutput ¶
GetValidatorOutput is a struct that contains the publicly relevant values of a validator of the Odyssey Network for the output of GetValidator.
type Manager ¶
type Manager interface { fmt.Stringer // Add a subnet's validator set to the manager. // // If the subnet had previously registered a validator set, false will be // returned and the manager will not be modified. Add(subnetID ids.ID, set Set) bool // Get returns the validator set for the given subnet // Returns false if the subnet doesn't exist Get(ids.ID) (Set, bool) }
Manager holds the validator set of each subnet
type MockManager ¶
type MockManager struct {
// contains filtered or unexported fields
}
MockManager is a mock of Manager interface.
func NewMockManager ¶
func NewMockManager(ctrl *gomock.Controller) *MockManager
NewMockManager creates a new mock instance.
func (*MockManager) Add ¶
func (m *MockManager) Add(arg0 ids.ID, arg1 Set) bool
Add mocks base method.
func (*MockManager) EXPECT ¶
func (m *MockManager) EXPECT() *MockManagerMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
type MockManagerMockRecorder ¶
type MockManagerMockRecorder struct {
// contains filtered or unexported fields
}
MockManagerMockRecorder is the mock recorder for MockManager.
func (*MockManagerMockRecorder) Add ¶
func (mr *MockManagerMockRecorder) Add(arg0, arg1 interface{}) *gomock.Call
Add indicates an expected call of Add.
func (*MockManagerMockRecorder) Get ¶
func (mr *MockManagerMockRecorder) Get(arg0 interface{}) *gomock.Call
Get indicates an expected call of Get.
func (*MockManagerMockRecorder) String ¶
func (mr *MockManagerMockRecorder) String() *gomock.Call
String indicates an expected call of String.
type MockSet ¶
type MockSet struct {
// contains filtered or unexported fields
}
MockSet is a mock of Set interface.
func NewMockSet ¶
func NewMockSet(ctrl *gomock.Controller) *MockSet
NewMockSet creates a new mock instance.
func (*MockSet) EXPECT ¶
func (m *MockSet) EXPECT() *MockSetMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockSet) Map ¶
func (m *MockSet) Map() map[ids.NodeID]*GetValidatorOutput
Map mocks base method.
func (*MockSet) PrefixedString ¶
PrefixedString mocks base method.
func (*MockSet) RegisterCallbackListener ¶
func (m *MockSet) RegisterCallbackListener(arg0 SetCallbackListener)
RegisterCallbackListener mocks base method.
func (*MockSet) RemoveWeight ¶
RemoveWeight mocks base method.
func (*MockSet) SubsetWeight ¶
SubsetWeight mocks base method.
type MockSetMockRecorder ¶
type MockSetMockRecorder struct {
// contains filtered or unexported fields
}
MockSetMockRecorder is the mock recorder for MockSet.
func (*MockSetMockRecorder) Add ¶
func (mr *MockSetMockRecorder) Add(arg0, arg1, arg2, arg3 interface{}) *gomock.Call
Add indicates an expected call of Add.
func (*MockSetMockRecorder) AddWeight ¶
func (mr *MockSetMockRecorder) AddWeight(arg0, arg1 interface{}) *gomock.Call
AddWeight indicates an expected call of AddWeight.
func (*MockSetMockRecorder) Contains ¶
func (mr *MockSetMockRecorder) Contains(arg0 interface{}) *gomock.Call
Contains indicates an expected call of Contains.
func (*MockSetMockRecorder) Get ¶
func (mr *MockSetMockRecorder) Get(arg0 interface{}) *gomock.Call
Get indicates an expected call of Get.
func (*MockSetMockRecorder) GetWeight ¶
func (mr *MockSetMockRecorder) GetWeight(arg0 interface{}) *gomock.Call
GetWeight indicates an expected call of GetWeight.
func (*MockSetMockRecorder) Len ¶
func (mr *MockSetMockRecorder) Len() *gomock.Call
Len indicates an expected call of Len.
func (*MockSetMockRecorder) Map ¶
func (mr *MockSetMockRecorder) Map() *gomock.Call
Map indicates an expected call of Map.
func (*MockSetMockRecorder) PrefixedString ¶
func (mr *MockSetMockRecorder) PrefixedString(arg0 interface{}) *gomock.Call
PrefixedString indicates an expected call of PrefixedString.
func (*MockSetMockRecorder) RegisterCallbackListener ¶
func (mr *MockSetMockRecorder) RegisterCallbackListener(arg0 interface{}) *gomock.Call
RegisterCallbackListener indicates an expected call of RegisterCallbackListener.
func (*MockSetMockRecorder) RemoveWeight ¶
func (mr *MockSetMockRecorder) RemoveWeight(arg0, arg1 interface{}) *gomock.Call
RemoveWeight indicates an expected call of RemoveWeight.
func (*MockSetMockRecorder) Sample ¶
func (mr *MockSetMockRecorder) Sample(arg0 interface{}) *gomock.Call
Sample indicates an expected call of Sample.
func (*MockSetMockRecorder) String ¶
func (mr *MockSetMockRecorder) String() *gomock.Call
String indicates an expected call of String.
func (*MockSetMockRecorder) SubsetWeight ¶
func (mr *MockSetMockRecorder) SubsetWeight(arg0 interface{}) *gomock.Call
SubsetWeight indicates an expected call of SubsetWeight.
func (*MockSetMockRecorder) Weight ¶
func (mr *MockSetMockRecorder) Weight() *gomock.Call
Weight indicates an expected call of Weight.
type MockState ¶
type MockState struct {
// contains filtered or unexported fields
}
MockState is a mock of State interface.
func NewMockState ¶
func NewMockState(ctrl *gomock.Controller) *MockState
NewMockState creates a new mock instance.
func (*MockState) EXPECT ¶
func (m *MockState) EXPECT() *MockStateMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockState) GetCurrentHeight ¶
GetCurrentHeight mocks base method.
func (*MockState) GetMinimumHeight ¶
GetMinimumHeight mocks base method.
func (*MockState) GetSubnetID ¶
GetSubnetID mocks base method.
type MockStateMockRecorder ¶
type MockStateMockRecorder struct {
// contains filtered or unexported fields
}
MockStateMockRecorder is the mock recorder for MockState.
func (*MockStateMockRecorder) GetCurrentHeight ¶
func (mr *MockStateMockRecorder) GetCurrentHeight(arg0 interface{}) *gomock.Call
GetCurrentHeight indicates an expected call of GetCurrentHeight.
func (*MockStateMockRecorder) GetMinimumHeight ¶
func (mr *MockStateMockRecorder) GetMinimumHeight(arg0 interface{}) *gomock.Call
GetMinimumHeight indicates an expected call of GetMinimumHeight.
func (*MockStateMockRecorder) GetSubnetID ¶
func (mr *MockStateMockRecorder) GetSubnetID(arg0, arg1 interface{}) *gomock.Call
GetSubnetID indicates an expected call of GetSubnetID.
func (*MockStateMockRecorder) GetValidatorSet ¶
func (mr *MockStateMockRecorder) GetValidatorSet(arg0, arg1, arg2 interface{}) *gomock.Call
GetValidatorSet indicates an expected call of GetValidatorSet.
type MockSubnetConnector ¶
type MockSubnetConnector struct {
// contains filtered or unexported fields
}
MockSubnetConnector is a mock of SubnetConnector interface.
func NewMockSubnetConnector ¶
func NewMockSubnetConnector(ctrl *gomock.Controller) *MockSubnetConnector
NewMockSubnetConnector creates a new mock instance.
func (*MockSubnetConnector) ConnectedSubnet ¶
func (m *MockSubnetConnector) ConnectedSubnet(arg0 context.Context, arg1 ids.NodeID, arg2 ids.ID) error
ConnectedSubnet mocks base method.
func (*MockSubnetConnector) EXPECT ¶
func (m *MockSubnetConnector) EXPECT() *MockSubnetConnectorMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
type MockSubnetConnectorMockRecorder ¶
type MockSubnetConnectorMockRecorder struct {
// contains filtered or unexported fields
}
MockSubnetConnectorMockRecorder is the mock recorder for MockSubnetConnector.
func (*MockSubnetConnectorMockRecorder) ConnectedSubnet ¶
func (mr *MockSubnetConnectorMockRecorder) ConnectedSubnet(arg0, arg1, arg2 interface{}) *gomock.Call
ConnectedSubnet indicates an expected call of ConnectedSubnet.
type Set ¶
type Set interface { formatting.PrefixedStringer // Add a new staker to the set. // Returns an error if: // - [weight] is 0 // - [nodeID] is already in the validator set // - the total weight of the validator set would overflow uint64 // If an error is returned, the set will be unmodified. Add(nodeID ids.NodeID, pk *bls.PublicKey, txID ids.ID, weight uint64) error // AddWeight to an existing staker. // Returns an error if: // - [weight] is 0 // - [nodeID] is not already in the validator set // - the total weight of the validator set would overflow uint64 // If an error is returned, the set will be unmodified. AddWeight(nodeID ids.NodeID, weight uint64) error // GetWeight retrieves the validator weight from the set. GetWeight(ids.NodeID) uint64 // Get returns the validator tied to the specified ID. Get(ids.NodeID) (*Validator, bool) // SubsetWeight returns the sum of the weights of the validators. SubsetWeight(set.Set[ids.NodeID]) uint64 // RemoveWeight from a staker. If the staker's weight becomes 0, the staker // will be removed from the validator set. // Returns an error if: // - [weight] is 0 // - [nodeID] is not already in the validator set // - the weight of the validator would become negative // If an error is returned, the set will be unmodified. RemoveWeight(nodeID ids.NodeID, weight uint64) error // Contains returns true if there is a validator with the specified ID // currently in the set. Contains(ids.NodeID) bool // Len returns the number of validators currently in the set. Len() int // Map of the validators in this set Map() map[ids.NodeID]*GetValidatorOutput // Weight returns the cumulative weight of all validators in the set. Weight() uint64 // Sample returns a collection of validatorIDs, potentially with duplicates. // If sampling the requested size isn't possible, an error will be returned. Sample(size int) ([]ids.NodeID, error) // When a validator's weight changes, or a validator is added/removed, // this listener is called. RegisterCallbackListener(SetCallbackListener) }
Set of validators that can be sampled
func NewBestSet ¶
NewBestSet returns a new, empty set of validators.
type SetCallbackListener ¶
type State ¶
type State interface { // GetMinimumHeight returns the minimum height of the block still in the // proposal window. GetMinimumHeight(context.Context) (uint64, error) // GetCurrentHeight returns the current height of the O-chain. GetCurrentHeight(context.Context) (uint64, error) // GetSubnetID returns the subnetID of the provided chain. GetSubnetID(ctx context.Context, chainID ids.ID) (ids.ID, error) // GetValidatorSet returns the validators of the provided subnet at the // requested O-chain height. // The returned map should not be modified. GetValidatorSet( ctx context.Context, height uint64, subnetID ids.ID, ) (map[ids.NodeID]*GetValidatorOutput, error) }
State allows the lookup of validator sets on specified subnets at the requested O-chain height.
func NewNoValidatorsState ¶
type SubnetConnector ¶
type SubnetConnector interface {
ConnectedSubnet(ctx context.Context, nodeID ids.NodeID, subnetID ids.ID) error
}
SubnetConnector represents a handler that is called when a connection is marked as connected to a subnet
var UnhandledSubnetConnector SubnetConnector = &unhandledSubnetConnector{}
type TestState ¶
type TestState struct { T *testing.T CantGetMinimumHeight, CantGetCurrentHeight, CantGetSubnetID, CantGetValidatorSet bool GetMinimumHeightF func(ctx context.Context) (uint64, error) GetCurrentHeightF func(ctx context.Context) (uint64, error) GetSubnetIDF func(ctx context.Context, chainID ids.ID) (ids.ID, error) GetValidatorSetF func(ctx context.Context, height uint64, subnetID ids.ID) (map[ids.NodeID]*GetValidatorOutput, error) }