Testing 49: Timing Module Certification. Testing 53: Timer timerx; Testing 65: Sleeper Certifications... Testing 67: BadSleeperValue exceptions BadMinSleeperTime exception works. BadMaxSleeperTime exception works. Unset Sleep Time exception works. Bad low after construction exception works. Bad high after construction exception works. Bad low on sleep(x) exception works. Bad high on sleep(x) exception works. Testing 176: Sleeper Sleeper1; Testing 179: Sleeper Sleeper200(200); Testing 182: Sleeper200.getMillisecondsToSleep(); Sleeper200.getMilliscondsToSleep() OK! Testing 198: Sleeper1.setMillisecondsToSleep(FIRST_LEEPER1_TIME) Testing 200: Sleeper1.getMillisecondsToSleep() Testing 206: First Elapsed Time from timerx & Build T1 to test Sleeper1. Time elapsed: 0 Testing 209: Sleeper1.sleep(); Time elapsed: 0.095 T1 time slept: 95 T1.getElapsedTime - Sleeper1.getMillisecondsToSleep() within 15ms - OK! (3ms) Testing 225: T1.restart & Sleeper.sleep(x) Testing 226: Sleeper1.sleep(SECOND_SLEEPER1_TIME); Time elapsed: 0.63 T1 time slept: 535 Sleeper1.getMillisecondsToSleep(): 532 T1.getElapsedTime - Sleeper1.getMillisecondsToSleep() within 15 ms - OK! (3ms) Testing 250: PollTimer exceptions... Bad low nominal construction exception works. Bad high nominal construction exception works. Bad low max construction exception works. Bad high max construction exception works. Bad low nom change exception works. Bad high nom change exception works. Bad low max change exception works. Bad high max change exception works. Testing 368: PollTimer PT1(PTNOMINAL, PTMAXIMUM); Testing 376: First pause time = Min PT1 Min Poll Time indicated on first pass OK! Elapsed on first poll was: 13 PT1 Min Poll Time .wiggle on first poll was OK! (3) Testing 399: PT1.pause() in a loop to Max poll time. Loop[1] Last Poll Time: 20 Measured: 22 Loop[2] Last Poll Time: 30 Measured: 32 Loop[3] Last Poll Time: 50 Measured: 52 Loop[4] Last Poll Time: 80 Measured: 82 Loop[5] Last Poll Time: 130 Measured: 132 Loop[6] Last Poll Time: 210 Measured: 212 Loop[7] Last Poll Time: 340 Measured: 342 Loop[8] Last Poll Time: 550 Measured: 551 Loop[9] Last Poll Time: 890 Measured: 891 Loop[10] Last Poll Time: 1000 Measured: 1002 Testing 418: Max pause time reached and correct? Indicated Poll Time is correct. SWIGGLE passed! Testing 426: PT1.reset(); Testing 445: TX, TY, TZ chaining & basic functions. TY.isRunning() seems correct. TX.isRunning() seems correct. timerx.start(TZ.stop()) worked as expected. Testing 481: getStartClock, getStopClock, and getElapsedTime TX start clock: 1720113802 TX stop clock: 1720114004 TX external calc of elapsed ms = 202 TX getElapsedTime() returns: 202 TX getElapsedTime() and MeasureElapsed match ok! Testing 495: getElapsedSeconds() math TZ.getElapsedSeconds() returns: 0.606 SecondsDelta is: 0.606 Seconds Look Good from getElapsedSeconds(). Testing 509: Does the TX, TY, TZ chain match? Chained timers work ok. Testing 520: isUnixBased() Correct? isUnixBased() appears correct. Testing 539: toWindowsEpoch() and toUnixEpoch() Epoch Conversions seem correct. Testing 560: ThirtySecondTimeout X30 getDuration() seems sane. Testing 571: Timeout.getElapsedTime & .getRemainingTime() getElapsedTime() seems sane. getRemainingTime() seems sane. Testing 599: X30 count down... X30.getElapsedTime() = 202 X30.getRemainingTime() = 29798 X30.getElapsedTime() = 1203 X30.getRemainingTime() = 28796 X30.getElapsedTime() = 2205 X30.getRemainingTime() = 27795 X30.getElapsedTime() = 3207 X30.getRemainingTime() = 26793 X30.getElapsedTime() = 4209 X30.getRemainingTime() = 25791 X30.getElapsedTime() = 5211 X30.getRemainingTime() = 24789 X30.getElapsedTime() = 6212 X30.getRemainingTime() = 23788 X30.getElapsedTime() = 7215 X30.getRemainingTime() = 22785 X30.getElapsedTime() = 8217 X30.getRemainingTime() = 21783 X30.getElapsedTime() = 9219 X30.getRemainingTime() = 20781 X30.getElapsedTime() = 10220 X30.getRemainingTime() = 19780 X30.getElapsedTime() = 11222 X30.getRemainingTime() = 18778 X30.getElapsedTime() = 12224 X30.getRemainingTime() = 17776 X30.getElapsedTime() = 13226 X30.getRemainingTime() = 16774 X30.getElapsedTime() = 14227 X30.getRemainingTime() = 15773 X30.getElapsedTime() = 15229 X30.getRemainingTime() = 14771 X30.getElapsedTime() = 16231 X30.getRemainingTime() = 13769 X30.getElapsedTime() = 17233 X30.getRemainingTime() = 12767 X30.getElapsedTime() = 18235 X30.getRemainingTime() = 11764 X30.getElapsedTime() = 19238 X30.getRemainingTime() = 10762 X30.getElapsedTime() = 20240 X30.getRemainingTime() = 9760 X30.getElapsedTime() = 21242 X30.getRemainingTime() = 8758 X30.getElapsedTime() = 22244 X30.getRemainingTime() = 7756 X30.getElapsedTime() = 23245 X30.getRemainingTime() = 6755 X30.getElapsedTime() = 24247 X30.getRemainingTime() = 5753 X30.getElapsedTime() = 25249 X30.getRemainingTime() = 4751 X30.getElapsedTime() = 26251 X30.getRemainingTime() = 3749 X30.getElapsedTime() = 27252 X30.getRemainingTime() = 2748 X30.getElapsedTime() = 28254 X30.getRemainingTime() = 1746 X30.getElapsedTime() = 29256 X30.getRemainingTime() = 744 Testing 610: X30 Remaining value after expiration. X30 zero remaining after timeout ok. Testing 620: X30 Restart function X30 Restart to 30 secs OK. All OK!