Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/test/clock_test.cpp
blob: aee83c470ed9d045f7cc3f6dc1dd9081a64f87f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include "StarTime.hpp"
#include "StarThread.hpp"

#include "gtest/gtest.h"

using namespace Star;

TEST(ClockTest, All) {
  Clock clock;

  Thread::sleepPrecise(1000);

  // Pick wide range in case the system is acting iffy, it's just to check that
  // the clock is progressing properly.
  EXPECT_GT(clock.time(), 0.8);
  EXPECT_LT(clock.time(), 8.0);

  double time = clock.time();
  clock.stop();
  Thread::sleepPrecise(1000);
  EXPECT_EQ(clock.time(), time);

  clock.reset();
  EXPECT_EQ(clock.time(), 0.0);

  Timer nullTimer;
  EXPECT_TRUE(nullTimer.timeUp());
  EXPECT_FALSE(nullTimer.running());
}