public void LinearBackoffDelayPolicy_BacksOffLinearly() { TimeSpan minimumDelay = TimeSpan.FromSeconds(2); var policy = new LinearBackoffDelayPolicy(minimumDelay); Assert.AreEqual(TimeSpan.FromSeconds(2), policy.GetDelay(0)); Assert.AreEqual(TimeSpan.FromSeconds(4), policy.GetDelay(1)); Assert.AreEqual(TimeSpan.FromSeconds(6), policy.GetDelay(2)); Assert.AreEqual(TimeSpan.FromSeconds(8), policy.GetDelay(3)); Assert.AreEqual(TimeSpan.FromSeconds(10), policy.GetDelay(4)); Assert.AreEqual(TimeSpan.FromSeconds(12), policy.GetDelay(5)); }
public void LinearBackoffDelayPolicy_BacksOffLinearly_UntilReachingMaximumDelay() { TimeSpan minimumDelay = TimeSpan.FromSeconds(2); TimeSpan maximumDelay = TimeSpan.FromSeconds(7); var policy = new LinearBackoffDelayPolicy(minimumDelay, maximumDelay); Assert.AreEqual(TimeSpan.FromSeconds(2), policy.GetDelay(0)); Assert.AreEqual(TimeSpan.FromSeconds(4), policy.GetDelay(1)); Assert.AreEqual(TimeSpan.FromSeconds(6), policy.GetDelay(2)); Assert.AreEqual(TimeSpan.FromSeconds(7), policy.GetDelay(3)); Assert.AreEqual(TimeSpan.FromSeconds(7), policy.GetDelay(4)); Assert.AreEqual(TimeSpan.FromSeconds(7), policy.GetDelay(5)); }