public virtual void Setup() { ILogManager logger = LimboLogs.Instance; ISnapshotableDb beamSyncDb = new StateDb(new BeamSyncDb(new MemDb(), LimboLogs.Instance)); IDb beamSyncCodeDb = new BeamSyncDb(new MemDb(), LimboLogs.Instance); IDb codeDb = UseBeamSync ? beamSyncCodeDb : new StateDb(); _stateDb = UseBeamSync ? beamSyncDb : new StateDb(); TestState = new StateProvider(_stateDb, codeDb, logger); Storage = new StorageProvider(_stateDb, TestState, logger); _ethereumEcdsa = new EthereumEcdsa(SpecProvider, logger); IBlockhashProvider blockhashProvider = TestBlockhashProvider.Instance; Machine = new VirtualMachine(TestState, Storage, blockhashProvider, SpecProvider, logger); _processor = new TransactionProcessor(SpecProvider, TestState, Storage, Machine, logger); }
public virtual void Setup() { ILogManager logManager = GetLogManager(); MemDb beamStateDb = new MemDb(); IDb beamSyncDb = new BeamSyncDb(new MemDb(), beamStateDb, StaticSelector.Full, logManager); IDb beamSyncCodeDb = new BeamSyncDb(new MemDb(), beamStateDb, StaticSelector.Full, logManager); IDb codeDb = UseBeamSync ? beamSyncCodeDb : new MemDb(); _stateDb = UseBeamSync ? beamSyncDb : new MemDb(); var trieStore = new TrieStore(_stateDb, logManager); TestState = new StateProvider(trieStore, codeDb, logManager); Storage = new StorageProvider(trieStore, TestState, logManager); _ethereumEcdsa = new EthereumEcdsa(SpecProvider.ChainId, logManager); IBlockhashProvider blockhashProvider = TestBlockhashProvider.Instance; Machine = new VirtualMachine(TestState, Storage, blockhashProvider, SpecProvider, logManager); _processor = new TransactionProcessor(SpecProvider, TestState, Storage, Machine, logManager); }