public void TestSimple() { try { new DedicatedTaskRunner(null); Assert.Fail("Should throw a NullReferenceException"); } catch(NullReferenceException) { } SimpleCountingTask simpleTask = new SimpleCountingTask(); Assert.IsTrue(simpleTask.Count == 0); DedicatedTaskRunner simpleTaskRunner = new DedicatedTaskRunner(simpleTask); simpleTaskRunner.Wakeup(); Thread.Sleep(500); Assert.IsTrue(simpleTask.Count >= 1); simpleTaskRunner.Wakeup(); Thread.Sleep(500); Assert.IsTrue(simpleTask.Count >= 2); InfiniteCountingTask infiniteTask = new InfiniteCountingTask(); Assert.IsTrue(infiniteTask.Count == 0); DedicatedTaskRunner infiniteTaskRunner = new DedicatedTaskRunner(infiniteTask); Thread.Sleep(500); Assert.IsTrue(infiniteTask.Count != 0); infiniteTaskRunner.Shutdown(); uint count = infiniteTask.Count; Thread.Sleep(500); Assert.IsTrue(infiniteTask.Count == count); }
public void TestSimple() { try { new DedicatedTaskRunner(null); Assert.Fail("Should throw a NullReferenceException"); } catch { } SimpleCountingTask simpleTask = new SimpleCountingTask(); Assert.IsTrue(simpleTask.Count == 0); DedicatedTaskRunner simpleTaskRunner = new DedicatedTaskRunner(simpleTask); simpleTaskRunner.Wakeup(); Thread.Sleep(500); Assert.IsTrue(simpleTask.Count >= 1); simpleTaskRunner.Wakeup(); Thread.Sleep(500); Assert.IsTrue(simpleTask.Count >= 2); InfiniteCountingTask infiniteTask = new InfiniteCountingTask(); Assert.IsTrue(infiniteTask.Count == 0); DedicatedTaskRunner infiniteTaskRunner = new DedicatedTaskRunner(infiniteTask); Thread.Sleep(500); Assert.IsTrue(infiniteTask.Count != 0); infiniteTaskRunner.Shutdown(); uint count = infiniteTask.Count; Thread.Sleep(500); Assert.IsTrue(infiniteTask.Count == count); }