public async Task After_ending_does_not_update_total_or_current() { ManualTimestamper manualTimestamper = new ManualTimestamper(); MeasuredProgress measuredProgress = new MeasuredProgress(manualTimestamper); measuredProgress.Update(0L); measuredProgress.SetMeasuringPoint(); manualTimestamper.Add(TimeSpan.FromMilliseconds(100)); measuredProgress.Update(1L); measuredProgress.SetMeasuringPoint(); manualTimestamper.Add(TimeSpan.FromMilliseconds(100)); measuredProgress.Update(3L); measuredProgress.MarkEnd(); manualTimestamper.Add(TimeSpan.FromMilliseconds(100)); measuredProgress.SetMeasuringPoint(); manualTimestamper.Add(TimeSpan.FromMilliseconds(100)); measuredProgress.SetMeasuringPoint(); manualTimestamper.Add(TimeSpan.FromMilliseconds(100)); measuredProgress.SetMeasuringPoint(); Assert.GreaterOrEqual(measuredProgress.TotalPerSecond, 6M); Assert.LessOrEqual(measuredProgress.TotalPerSecond, 15M); Assert.AreEqual(0M, measuredProgress.CurrentPerSecond); }
public async Task Finishes_when_all_downloaded() { IBlockTree blockTree = Substitute.For <IBlockTree>(); blockTree.LowestInsertedHeader.Returns(Build.A.BlockHeader.WithNumber(1000).TestObject); ISyncReport report = Substitute.For <ISyncReport>(); report.HeadersInQueue.Returns(new MeasuredProgress()); MeasuredProgress measuredProgress = new MeasuredProgress(); report.FastBlocksHeaders.Returns(measuredProgress); FastHeadersSyncFeed feed = new FastHeadersSyncFeed(blockTree, Substitute.For <ISyncPeerPool>(), new SyncConfig { FastSync = true, FastBlocks = true, PivotNumber = "1000", PivotHash = Keccak.Zero.ToString(), PivotTotalDifficulty = "1000" }, report, LimboLogs.Instance); await feed.PrepareRequest(); blockTree.LowestInsertedHeader.Returns(Build.A.BlockHeader.WithNumber(1).TestObject); var result = await feed.PrepareRequest(); result.Should().BeNull(); feed.CurrentState.Should().Be(SyncFeedState.Finished); measuredProgress.HasEnded.Should().BeTrue(); }
public void Current_value_uninitialized() { MeasuredProgress measuredProgress = new MeasuredProgress(); Assert.AreEqual(0L, measuredProgress.CurrentValue); }
public void Total_per_second_uninitialized() { MeasuredProgress measuredProgress = new MeasuredProgress(); Assert.AreEqual(decimal.Zero, measuredProgress.TotalPerSecond); }
public void Has_ended_returns_false_when_ended() { MeasuredProgress measuredProgress = new MeasuredProgress(); Assert.False(measuredProgress.HasEnded); }