| #!/bin/bash |
| |
| . ./test.common |
| test_start "NTP eras" |
| |
| # Assume NTP_ERA_SPLIT is between years 1960 and 1990 |
| |
| # Set date to 500 seconds before NTP second overflows, this should |
| # work correctly with both 32-bit and 64-bit time_t |
| export CLKNETSIM_START_DATE=$(date -d 'Feb 7 06:19:56 UTC 2036' +'%s') |
| |
| run_test || test_fail |
| check_chronyd_exit || test_fail |
| check_source_selection || test_fail |
| check_packet_interval || test_fail |
| check_sync || test_fail |
| |
| # The following tests need 64-bit time_t |
| grep -q 'HAVE_LONG_TIME_T 1' ../../config.h || test_skip |
| |
| for year in 1990 2090; do |
| export CLKNETSIM_START_DATE=$(date -d "Jan 1 00:00:00 UTC $year" +'%s') |
| run_test || test_fail |
| check_chronyd_exit || test_fail |
| check_source_selection || test_fail |
| check_packet_interval || test_fail |
| check_sync || test_fail |
| done |
| |
| for year in 1950 2130; do |
| export CLKNETSIM_START_DATE=$(date -d "Jan 1 00:00:00 UTC $year" +'%s') |
| run_test || test_fail |
| check_chronyd_exit || test_fail |
| check_source_selection || test_fail |
| check_packet_interval || test_fail |
| # This check is expected to fail |
| check_sync && test_fail |
| done |
| |
| test_pass |