示例#1
0
        /// <summary>
        /// Tests the given timer. Must have not been started.
        /// </summary>
        private void TestTimer(Timer timer)
        {
            long elapsed1, elapsed2;

            int halfWait = (int)(timer.Timeout / 2);

            Assert.AreEqual(timer.TotalMilliseconds, 0);
            Assert.IsFalse(timer.IsUp);

            timer.Unpause();

            SystemThread.Sleep(halfWait);
            Assert.IsFalse(timer.IsUp);
            SystemThread.Sleep(halfWait);
            Assert.IsTrue(timer.IsUp);
            Assert.IsTrue(timer.TotalMilliseconds >= timer.Timeout);

            timer.Reset();
            Assert.IsFalse(timer.IsUp);
            SystemThread.Sleep(halfWait);
            Assert.IsFalse(timer.IsUp);
            SystemThread.Sleep(halfWait);
            Assert.IsTrue(timer.IsUp);

            timer.Reset(false);
            Assert.AreEqual(timer.TotalMilliseconds, 0);
        }