12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- #include "tests/ClockTests.h"
- #include "test/Test.h"
- #include "utils/Clock.h"
- static void testUpdate() {
- Core::Clock c;
- Core::Clock::Nanos n1 = 0;
- Core::Clock::Nanos n2 = 0;
- Core::Clock::Nanos n3 = 0;
- Core::Clock::Nanos n4 = 0;
- CORE_TEST_ERROR(c.update(n1));
- CORE_TEST_ERROR(c.update(n2));
- CORE_TEST_ERROR(c.update(n3));
- CORE_TEST_ERROR(c.update(n4));
- CORE_TEST_TRUE(n1 == 0);
- CORE_TEST_TRUE(n2 > 0);
- CORE_TEST_TRUE(n3 > 0);
- CORE_TEST_TRUE(n4 > 0);
- }
- static void testUpdatesPerSecond() {
- Core::Clock c;
- for(int i = 0; i < 1000; i++) {
- Core::Clock::Nanos n = 0;
- CORE_TEST_ERROR(c.update(n));
- }
- CORE_TEST_TRUE(c.getUpdatesPerSecond() > 0.0f);
- }
- static void testWait(Core::Clock::Nanos wait) {
- Core::Clock c;
- Core::Clock::Nanos n = 0;
- CORE_TEST_ERROR(c.update(n));
- CORE_TEST_ERROR(c.wait(wait));
- Core::Clock::Nanos n2 = 0;
- CORE_TEST_ERROR(c.update(n2));
- CORE_TEST_TRUE(n2 >= wait && n2 <= wait * 11 / 10);
- }
- void Core::ClockTests::test() {
- testUpdate();
- testUpdatesPerSecond();
- testWait(50'000'000);
- testWait(1'300'000'000);
- }
|