public void ThreadSleep_SleepFiftyMiliSeconds_ItShouldTakeApproximatelyFiftyMilliSeconds() { ThreadSleepTester threadSleepTester = new ThreadSleepTester(); Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); threadSleepTester.Sleep(50); stopwatch.Stop(); var elapsedMilliseconds = stopwatch.ElapsedMilliseconds; Assert.InRange(elapsedMilliseconds, 40, 60); }
public void ThreadSleep_TenTimesSleepTenMiliSeconds_ItShouldTakeApproximatelyTenMilliSecondsEach() { ThreadSleepTester threadSleepTester = new ThreadSleepTester(); for (int i = 0; i < 10; i++) { new Thread(() => { Stopwatch stopwatch = new Stopwatch(); stopwatch.Reset(); stopwatch.Start(); threadSleepTester.Sleep(10); stopwatch.Stop(); var elapsedMilliseconds = stopwatch.ElapsedMilliseconds; Assert.InRange(elapsedMilliseconds, 5, 20); }).Start(); } }