test: add system tests

Add a new set of tests for testing basic functionality, starting chronyd
with root privileges on the actual system instead of the simulator.

Tests numbered in the 100-199 range are considered destructive and
intended to be used only on machines dedicated for development or
testing. They are started by the run script only with the -d option.
They may adjust/step the system clock and other clocks, block the RTC,
enable HW timestamping, create SHM segments, etc.

Other tests should not interfere with the system and should work even
when another NTP server/client is running.
This commit is contained in:
Miroslav Lichvar
2019-04-17 17:33:16 +02:00
parent 69c6dffd63
commit 6e52a9be7a
14 changed files with 638 additions and 0 deletions

19
test/system/101-rtc Executable file
View File

@@ -0,0 +1,19 @@
#!/bin/bash
. ./test.common
check_chronyd_features RTC || test_skip "RTC support disabled"
[ -c "/dev/rtc" ] || test_skip "missing /dev/rtc"
test_start "real-time clock"
minimal_config=1
extra_chronyd_options="-s"
extra_chronyd_directives="rtcfile $TEST_DIR/rtcfile"
echo "1 $(date +%s) 0.0 0.0" > "$TEST_DIR/rtcfile"
start_chronyd || test_fail
stop_chronyd || test_fail
check_chronyd_message_count "\(clock off from RTC\|RTC time before last\)" 1 1 || test_fail
test_pass