From: Miroslav Lichvar Date: Tue, 28 Aug 2018 16:00:16 +0000 (+0200) Subject: test: add 131-maxchange test X-Git-Tag: 3.4-pre1~10 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=933bd017b47ddf9f89b83ef02e329375aa83d910;p=thirdparty%2Fchrony.git test: add 131-maxchange test --- diff --git a/test/simulation/131-maxchange b/test/simulation/131-maxchange new file mode 100755 index 00000000..969f71f4 --- /dev/null +++ b/test/simulation/131-maxchange @@ -0,0 +1,20 @@ +#!/bin/bash + +. ./test.common + +test_start "maxchange directive" + +time_offset=2 +max_sync_time=5000 +client_conf="maxchange 0.1 1 3" +client_step="(* $step (equal 0.1 (sum 1.0) 300))" + +run_test || test_fail +check_chronyd_exit && test_fail +check_source_selection || test_fail +check_packet_interval || test_fail +check_sync && test_fail +check_log_messages "seconds exceeds.*ignored" 3 3 || test_fail +check_log_messages "seconds exceeds.*exiting" 1 1 || test_fail + +test_pass diff --git a/test/simulation/test.common b/test/simulation/test.common index dfb32187..c5758c69 100644 --- a/test/simulation/test.common +++ b/test/simulation/test.common @@ -337,6 +337,24 @@ check_chronyc_output() { return $ret } +# Check the number of messages matching a matter in the client logs +check_log_messages() { + local i count ret=0 pattern=$1 min=$2 max=$3 + + test_message 2 1 "checking number of messages \"$pattern\":" + + for i in $(seq $[$servers * $server_strata + 1] $(get_chronyd_nodes)); do + count=$(grep "$pattern" tmp/log.$i | wc -l) + test_message 3 0 "node $i: $count" + + [ "$min" -le "$count" ] && [ "$count" -le "$max" ] && \ + test_ok || test_bad + [ $? -eq 0 ] || ret=1 + done + + return $ret +} + # Check if only NTP port (123) was used check_packet_port() { local i ret=0 port=123