core_assertions.rb: Tweak timeout limit

Increase the timeout limit when variance at rehearsal is small.
This commit is contained in:
Nobuyoshi Nakada 2023-04-03 14:10:16 +09:00
parent 4b100f75d2
commit f07c756494
Notes: git 2023-04-05 15:19:25 +00:00

View File

@ -758,14 +758,14 @@ eom
end
times.compact!
tmin, tmax = times.minmax
tmax *= tmax / tmin
tmax = 10**Math.log10(tmax).ceil
tbase = 10 ** Math.log10(tmax * ([(tmax / tmin), 2].max ** 2)).ceil
info = "(tmin: #{tmin}, tmax: #{tmax}, tbase: #{tbase})"
seq.each do |i|
next if i == first
t = tmax * i.fdiv(first)
t = tbase * i.fdiv(first)
*arg = pre.call(i)
message = "[#{i}]: in #{t}s"
message = "[#{i}]: in #{t}s #{info}"
Timeout.timeout(t, Timeout::Error, message) do
st = Process.clock_gettime(Process::CLOCK_MONOTONIC)
yield(*arg)