示例#1
0
        public Ledger(IDeltaExecutor deltaExecutor,
                      IStateProvider stateProvider,
                      IStorageProvider storageProvider,
                      ISnapshotableDb stateDb,
                      ISnapshotableDb codeDb,
                      IAccountRepository accounts,
                      IDeltaHashProvider deltaHashProvider,
                      ILedgerSynchroniser synchroniser,
                      IMempool <PublicEntryDao> mempool,
                      IMapperProvider mapperProvider,
                      ILogger logger)
        {
            Accounts         = accounts;
            _deltaExecutor   = deltaExecutor;
            _stateProvider   = stateProvider;
            _storageProvider = storageProvider;
            _stateDb         = stateDb;
            _codeDb          = codeDb;
            _synchroniser    = synchroniser;
            _mempool         = mempool;
            _mapperProvider  = mapperProvider;
            _logger          = logger;

            _deltaUpdatesSubscription = deltaHashProvider.DeltaHashUpdates.Subscribe(Update);
            LatestKnownDelta          = _synchroniser.DeltaCache.GenesisHash;
        }
        public LedgerTests()
        {
            _testScheduler  = new TestScheduler();
            _fakeRepository = Substitute.For <IAccountRepository>();
            _hashProvider   = new HashProvider(HashingAlgorithm.GetAlgorithmMetadata("blake2b-256"));

            _logger             = Substitute.For <ILogger>();
            _mempool            = Substitute.For <IMempool <MempoolDocument> >();
            _deltaHashProvider  = Substitute.For <IDeltaHashProvider>();
            _ledgerSynchroniser = Substitute.For <ILedgerSynchroniser>();
            _genesisHash        = _hashProvider.ComputeUtf8MultiHash("genesis");
            _ledgerSynchroniser.DeltaCache.GenesisHash.Returns(_genesisHash);
            _ledgerSynchroniser.DeltaCache.GenesisAddress.Returns(_genesisHash.ToBase32());
        }
示例#3
0
        public Ledger(IAccountRepository accounts,
                      IDeltaHashProvider deltaHashProvider,
                      ILedgerSynchroniser synchroniser,
                      IMempool <MempoolDocument> mempool,
                      ILogger logger)
        {
            Accounts      = accounts;
            _synchroniser = synchroniser;
            _mempool      = mempool;
            _logger       = logger;

            _deltaUpdatesSubscription = deltaHashProvider.DeltaHashUpdates.Subscribe(Update);
            LatestKnownDelta          = _synchroniser.DeltaCache.GenesisHash;
            _cryptoContext            = new FfiWrapper();
        }
示例#4
0
        public LedgerTests()
        {
            _testScheduler  = new TestScheduler();
            _fakeRepository = Substitute.For <IAccountRepository>();
            _hashProvider   = new HashProvider(HashingAlgorithm.GetAlgorithmMetadata("blake2b-256"));
            _mapperProvider = new TestMapperProvider();

            _logger             = Substitute.For <ILogger>();
            _mempool            = Substitute.For <IMempool <PublicEntryDao> >();
            _deltaHashProvider  = Substitute.For <IDeltaHashProvider>();
            _ledgerSynchroniser = Substitute.For <ILedgerSynchroniser>();
            _genesisHash        = _hashProvider.ComputeUtf8MultiHash("genesis").CreateCid();
            _ledgerSynchroniser.DeltaCache.GenesisHash.Returns(_genesisHash);
            _executor        = Substitute.For <IDeltaExecutor>();
            _stateProvider   = Substitute.For <IStateProvider>();
            _storageProvider = Substitute.For <IStorageProvider>();
            _cryptoContext   = new FfiWrapper();
            _signingContext  = new SigningContext
            {
                NetworkType   = NetworkType.Devnet,
                SignatureType = SignatureType.TransactionPublic
            };
        }