public void GetMaxThenMin() { var min = 1; var max = 10; var t = new AdaptiveTiming(min, max); while (max > t.Get(false)) { } Assert.AreEqual(max, t.Get(false)); Assert.AreEqual(max, t.Get(false)); var result = t.Get(true); Assert.IsTrue(result < max); }
public void GetNoWorkMultiple() { var random = new Random(); var expected = random.NextDouble(); var timing = Substitute.For <ICalculateTiming>(); timing.FrequencyInSeconds.Returns(new Range <int>(1, 100000)); timing.Get(6).Returns(expected); var t = new AdaptiveTiming(timing); t.Get(false); t.Get(false); t.Get(false); t.Get(false); t.Get(false); var value = t.Get(false); Assert.AreEqual(expected, value); timing.Received().Get(1); timing.Received().Get(2); timing.Received().Get(3); timing.Received().Get(4); timing.Received().Get(5); timing.Received().Get(6); var r = timing.Received().FrequencyInSeconds; }
public void GetNoWork() { var random = new Random(); var expected = random.NextDouble(); var timing = Substitute.For <ICalculateTiming>(); timing.Get(0).Returns(expected); var t = new AdaptiveTiming(timing); var value = t.Get(false); Assert.AreEqual(expected, value); timing.Received().Get(0); }