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(); }
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); }
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); }
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 }); }