public int CalculateAdaptiveDelay()
{
int delay = _givenTimeout;
if (0 == delay) {
delay = Preferences.OnSleepDelay;
} else if (delay <= 5000) {
delay /= 20;
} else if (delay <= 20000) {
delay /= 40;
} else if (delay <= 60000) {
delay /= 60;
} else if (delay <= 600000) {
delay /= 100;
} else {
delay /= 200;
}
if (delay < Preferences.OnSleepDelay) {
delay = Preferences.OnSleepDelay;
}
CalculatedDelay = delay;
return CalculatedDelay;
}
}
public void Timeout_100() { // Arrange var timeoutManager = new TimeoutManager(100); // Act var result = timeoutManager.CalculateAdaptiveDelay(); // Assert MbUnit.Framework.Assert.AreEqual(Preferences.OnSleepDelay, result); Xunit.Assert.Equal(Preferences.OnSleepDelay, result); }