public void WaitTest() { const int sleepTime = 200; const int initialCount = 2; var target = new SemaphoreLight(initialCount); var start = DateTime.Now; target.Wait(); target.Wait(); Assert.IsTrue((DateTime.Now - start).TotalMilliseconds < 50); var releaseThread = new Thread( () => { Thread.Sleep(sleepTime); target.Release(); }); releaseThread.Start(); target.Wait(); var end = DateTime.Now; var elapsed = end - start; Assert.IsTrue(elapsed.TotalMilliseconds > 200); Assert.IsTrue(elapsed.TotalMilliseconds < 250); }
public void WaitTest() { int initialCount = 0; // TODO: Initialize to an appropriate value SemaphoreLight target = new SemaphoreLight(initialCount); // TODO: Initialize to an appropriate value target.Wait(); Assert.Inconclusive("A method that does not return a value cannot be verified."); }