#!/usr/bin/env bash

. ./test.common
test_start "presend option"

limit=9900
min_sync_time=136
max_sync_time=260
client_server_options="presend 6 maxdelay 16"
client_conf="maxdistance 10"

run_test || test_fail
check_chronyd_exit || test_fail
check_source_selection || test_fail
check_packet_interval || test_fail
check_sync || test_fail

base_delay=5

run_test || test_fail
check_chronyd_exit || test_fail
check_source_selection || test_fail
check_packet_interval || test_fail
check_sync || test_fail

limit=10
base_delay=$default_base_delay
client_conf="logdir tmp
log measurements"

client_server_options="presend 5"

run_test || test_fail
check_chronyd_exit || test_fail
check_packet_interval || test_fail

check_file_messages "20.*123\.1.* 111 111 0111" 1 1 measurements.log || test_fail
check_file_messages "20.*123\.1.* 111 111 1111" 1 1 measurements.log || test_fail
rm -f tmp/measurements.log

client_server_options="presend 5 xleave"

run_test || test_fail
check_chronyd_exit || test_fail
check_packet_interval || test_fail

check_file_messages "20.*123\.1.* 111 111 0111" 2 2 measurements.log || test_fail
check_file_messages "20.*123\.1.* 111 111 1111" 1 1 measurements.log || test_fail
rm -f tmp/measurements.log

test_pass
