let timeout state =
let now = OUnitUtils.now () in
let next_event_time =
List.fold_left
(fun next_event_time (_, test_running) ->
min test_running.next_health_check
(min test_running.deadline next_event_time))
(now +. state.health_check_interval)
state.tests_running
in
max 0.1 (next_event_time -. now)