prysm-pulse/beacon-chain/state/stategen/mock.go
Victor Farazdagi a069738c20
ETH2 Types: Slot (#8408)
* update shared/params

* update eth2-types deps

* update protobufs

* update shared/*

* fix testutil/state

* update beacon-chain/state

* update beacon-chain/db

* update tests

* fix test

* update beacon-chain/core

* update beacon-chain/blockchain

* update beacon-chain/cache

* beacon-chain/forkchoice

* update beacon-chain/operations

* update beacon-chain/p2p

* update beacon-chain/rpc

* update sync/initial-sync

* update deps

* update deps

* go fmt

* update beacon-chain/sync

* update endtoend/

* bazel build //beacon-chain - works w/o issues

* update slasher code

* udpate tools/

* update validator/

* update fastssz

* fix build

* fix test building

* update tests

* update ethereumapis deps

* fix tests

* update state/stategen

* fix build

* fix test

* add FarFutureSlot

* go imports

* Radek's suggestions

* Ivan's suggestions

* type conversions

* Nishant's suggestions

* add more tests to rpc_send_request

* fix test

* clean up

* fix conflicts

Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: nisdas <nishdas93@gmail.com>
2021-02-16 07:45:34 +00:00

122 lines
3.3 KiB
Go

package stategen
import (
"context"
types "github.com/prysmaticlabs/eth2-types"
eth "github.com/prysmaticlabs/ethereumapis/eth/v1alpha1"
"github.com/prysmaticlabs/prysm/beacon-chain/state"
ethereum_beacon_p2p_v1 "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1"
)
// MockStateManager is a fake implementation of StateManager.
type MockStateManager struct {
StatesByRoot map[[32]byte]*state.BeaconState
StatesBySlot map[types.Slot]*state.BeaconState
}
// NewMockService --
func NewMockService() *MockStateManager {
return &MockStateManager{
StatesByRoot: make(map[[32]byte]*state.BeaconState),
StatesBySlot: make(map[types.Slot]*state.BeaconState),
}
}
// Resume --
func (m *MockStateManager) Resume(ctx context.Context) (*state.BeaconState, error) {
panic("implement me")
}
// SaveFinalizedState --
func (m *MockStateManager) SaveFinalizedState(fSlot types.Slot, fRoot [32]byte, fState *state.BeaconState) {
panic("implement me")
}
// MigrateToCold --
func (m *MockStateManager) MigrateToCold(ctx context.Context, fRoot [32]byte) error {
panic("implement me")
}
// ReplayBlocks --
func (m *MockStateManager) ReplayBlocks(
ctx context.Context,
state *state.BeaconState,
signed []*eth.SignedBeaconBlock,
targetSlot types.Slot,
) (*state.BeaconState, error) {
panic("implement me")
}
// LoadBlocks --
func (m *MockStateManager) LoadBlocks(
ctx context.Context,
startSlot, endSlot types.Slot,
endBlockRoot [32]byte,
) ([]*eth.SignedBeaconBlock, error) {
panic("implement me")
}
// HasState --
func (m *MockStateManager) HasState(ctx context.Context, blockRoot [32]byte) (bool, error) {
panic("implement me")
}
// HasStateInCache --
func (m *MockStateManager) HasStateInCache(ctx context.Context, blockRoot [32]byte) (bool, error) {
panic("implement me")
}
// StateByRoot --
func (m *MockStateManager) StateByRoot(ctx context.Context, blockRoot [32]byte) (*state.BeaconState, error) {
return m.StatesByRoot[blockRoot], nil
}
// StateByRootInitialSync --
func (m *MockStateManager) StateByRootInitialSync(ctx context.Context, blockRoot [32]byte) (*state.BeaconState, error) {
panic("implement me")
}
// StateBySlot --
func (m *MockStateManager) StateBySlot(ctx context.Context, slot types.Slot) (*state.BeaconState, error) {
return m.StatesBySlot[slot], nil
}
// RecoverStateSummary --
func (m *MockStateManager) RecoverStateSummary(
ctx context.Context,
blockRoot [32]byte,
) (*ethereum_beacon_p2p_v1.StateSummary, error) {
panic("implement me")
}
// SaveState --
func (m *MockStateManager) SaveState(ctx context.Context, root [32]byte, st *state.BeaconState) error {
panic("implement me")
}
// ForceCheckpoint --
func (m *MockStateManager) ForceCheckpoint(ctx context.Context, root []byte) error {
panic("implement me")
}
// EnableSaveHotStateToDB --
func (m *MockStateManager) EnableSaveHotStateToDB(_ context.Context) {
panic("implement me")
}
// DisableSaveHotStateToDB --
func (m *MockStateManager) DisableSaveHotStateToDB(ctx context.Context) error {
panic("implement me")
}
// AddStateForRoot --
func (m *MockStateManager) AddStateForRoot(state *state.BeaconState, blockRoot [32]byte) {
m.StatesByRoot[blockRoot] = state
}
// AddStateForSlot --
func (m *MockStateManager) AddStateForSlot(state *state.BeaconState, slot types.Slot) {
m.StatesBySlot[slot] = state
}