Add simulation tests

Use clknetsim to run multiple chronyd instances with simulated clocks
and network. It allows fast and reproducible testing, without real
network.

Included are several tests of performance in different clock/network
conditions, chronyd options, NTP authentication, chronyc, and past bug
fixes.
This commit is contained in:
Miroslav Lichvar
2014-02-27 18:07:45 +01:00
parent ea526b96dd
commit 115e83f3aa
21 changed files with 894 additions and 0 deletions

22
test/simulation/104-driftfile Executable file
View File

@@ -0,0 +1,22 @@
#!/bin/bash
. test.common
test_start "driftfile directive"
servers=0
time_offset=0.0
wander=0.0
limit=10
freq_max_limit=1e-9
min_sync_time=1
max_sync_time=1
client_conf="driftfile tmp/drift"
for freq_offset in -5e-2 -5e-4 -5e-6 5e-6 5e-4 5e-2; do
awk "BEGIN {printf \"%.9e 1\", 1e6 - 1 / (1 + $freq_offset) * 1e6}" > tmp/drift
run_test || test_fail
check_chronyd_exit || test_fail
check_sync || test_fail
done
test_pass