コード例 #1
0
ファイル: LogFinderTests.cs プロジェクト: sounak98/nethermind
        public void filter_all_logs_when_receipts_are_missing([ValueSource(nameof(WithBloomValues))] bool withBloomDb)
        {
            StoreTreeBlooms(withBloomDb);
            _receiptStorage = NullReceiptStorage.Instance;
            _logFinder      = new LogFinder(_blockTree, _receiptStorage, _bloomStorage, _receiptsRecovery);

            var logFilter = AllBlockFilter().Build();
            var logs      = _logFinder.FindLogs(logFilter);

            logs.Should().BeEmpty();
        }
コード例 #2
0
        public void filter_all_logs_should_return_empty_array_when_to_block_is_null()
        {
            var blockFinder = Substitute.For <IBlockFinder>();

            _logFinder = new LogFinder(blockFinder, _receiptStorage);
            var logFilter = AllBlockFilter().Build();
            var logs      = _logFinder.FindLogs(logFilter);

            logs.Should().BeEmpty();
            blockFinder.Received().GetBlock(logFilter.ToBlock);
            blockFinder.DidNotReceive().GetBlock(logFilter.FromBlock);
        }
コード例 #3
0
        public void filter_all_logs_should_throw_when_to_block_is_not_found([ValueSource(nameof(WithBloomValues))] bool withBloomDb)
        {
            StoreTreeBlooms(withBloomDb);
            var blockFinder = Substitute.For <IBlockFinder>();

            _logFinder = new LogFinder(blockFinder, _receiptStorage, _bloomStorage, LimboLogs.Instance, _receiptsRecovery);
            var logFilter = AllBlockFilter().Build();
            var action    = new Func <IEnumerable <FilterLog> >(() => _logFinder.FindLogs(logFilter));

            action.Should().Throw <ArgumentException>();
            blockFinder.Received().FindHeader(logFilter.ToBlock);
            blockFinder.DidNotReceive().FindHeader(logFilter.FromBlock);
        }
コード例 #4
0
        public void filter_all_logs([ValueSource(nameof(WithBloomValues))] bool withBloomDb, [Values(false, true)] bool allowReceiptIterator)
        {
            SetUp(allowReceiptIterator);
            StoreTreeBlooms(withBloomDb);
            var logFilter = AllBlockFilter().Build();
            var logs      = _logFinder.FindLogs(logFilter).ToArray();

            logs.Length.Should().Be(5);
            var indexes = logs.Select(l => (int)l.LogIndex).ToArray();

            // indexes[0].Should().Be(0);
            // indexes[1].Should().Be(1);
            // indexes[2].Should().Be(0);
            // indexes[3].Should().Be(1);
            // indexes[4].Should().Be(2);
            indexes.Should().BeEquivalentTo(new [] { 0, 1, 0, 1, 2 });
        }