mirror of
https://gitlab.com/chrony/chrony.git
synced 2025-12-03 17:55:07 -05:00
test: fix util unit test for NTP era split
The current default NTP era split passed the Unix epoch (~50 years ago), which means the epoch converted to an NTP timestamp and back ends up in the next NTP era (year 2106). Fix the test to take into account the era split.
This commit is contained in:
@@ -100,11 +100,19 @@ void test_unit(void) {
|
||||
ntp_ts.hi = htonl(JAN_1970);
|
||||
ntp_ts.lo = 0xffffffff;
|
||||
UTI_Ntp64ToTimespec(&ntp_ts, &ts);
|
||||
#if defined(HAVE_LONG_TIME_T) && NTP_ERA_SPLIT > 0
|
||||
TEST_CHECK(ts.tv_sec == 0x100000000LL * (1 + (NTP_ERA_SPLIT - 1) / 0x100000000LL));
|
||||
#else
|
||||
TEST_CHECK(ts.tv_sec == 0);
|
||||
#endif
|
||||
TEST_CHECK(ts.tv_nsec == 999999999);
|
||||
|
||||
UTI_AddDoubleToTimespec(&ts, 1e-9, &ts);
|
||||
#if defined(HAVE_LONG_TIME_T) && NTP_ERA_SPLIT > 0
|
||||
TEST_CHECK(ts.tv_sec == 1 + 0x100000000LL * (1 + (NTP_ERA_SPLIT - 1) / 0x100000000LL));
|
||||
#else
|
||||
TEST_CHECK(ts.tv_sec == 1);
|
||||
#endif
|
||||
TEST_CHECK(ts.tv_nsec == 0);
|
||||
|
||||
ntp_fuzz.hi = 0;
|
||||
|
||||
Reference in New Issue
Block a user