24 #include "cheetah/utils/test/ModifiedJulianClockTest.h" 25 #include "cheetah/utils/ModifiedJulianClock.h" 35 ModifiedJulianClockTest::ModifiedJulianClockTest()
40 ModifiedJulianClockTest::~ModifiedJulianClockTest()
44 void ModifiedJulianClockTest::SetUp()
48 void ModifiedJulianClockTest::TearDown()
52 TEST_F(ModifiedJulianClockTest, test_julian_day)
54 ASSERT_EQ(julian_day(1), std::chrono::hours(24));
55 ASSERT_EQ(julian_day(2), std::chrono::hours(48));
58 TEST_F(ModifiedJulianClockTest, test_time_since_epoch)
60 std::chrono::time_point<ModifiedJulianClock> epoc;
61 ASSERT_EQ(julian_day(0), epoc.time_since_epoch());
63 std::chrono::time_point<ModifiedJulianClock> hundred = epoc + julian_day(100.0);
64 ASSERT_EQ(julian_day(100.0), hundred.time_since_epoch());
68 TEST_F(ModifiedJulianClockTest, test_time_point_add)
70 typename ModifiedJulianClock::time_point base(julian_day(48.0));
71 typename ModifiedJulianClock::time_point expected(julian_day(48.5));
72 typename ModifiedJulianClock::time_point midday = base + std::chrono::duration_cast<julian_day>(std::chrono::hours(12));
73 ASSERT_TRUE(expected == midday);
76 TEST_F(ModifiedJulianClockTest, test_time_point_subtract)
78 typename ModifiedJulianClock::time_point base(julian_day(48.0));
79 typename ModifiedJulianClock::time_point expected(julian_day(47.5));
80 typename ModifiedJulianClock::time_point midday = base - std::chrono::duration_cast<julian_day>(std::chrono::hours(12));
81 ASSERT_TRUE(expected == midday);
84 TEST_F(ModifiedJulianClockTest, test_time_point_conversion)
86 typename ModifiedJulianClock::time_point epoch(julian_day(40587.0));
87 std::chrono::time_point<std::chrono::system_clock> system_epoch;
88 ASSERT_TRUE(
static_cast<std::chrono::time_point<std::chrono::system_clock>
>(epoch) == system_epoch);
89 ASSERT_TRUE( static_cast<ModifiedJulianClock::time_point>(system_epoch) == epoch);
93 TEST_F(ModifiedJulianClockTest, test_cout)
95 auto today = ModifiedJulianClock::now();
96 std::cout <<
"time now=" << today <<
"\n";
Some limits and constants for FLDO.