public void Should_fire_once() { int fireCount = 0; var timer = new PreciseTimer(state => fireCount++, null); timer.FireAt(DateTime.Now.AddMilliseconds(100)); Thread.Sleep(1000); timer.Dispose(); Assert.That(fireCount, Is.EqualTo(1)); }
public void Should_fire_multiple_times() { int fireCount = 0; var timer = new PreciseTimer(state => { if (fireCount < 10) { fireCount++; } }, null); timer.FireAndRepeat(DateTime.Now, TimeSpan.FromMilliseconds(100)); Thread.Sleep(1000); timer.Dispose(); Assert.That(fireCount, Is.EqualTo(10)); }