mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-13 22:57:45 +00:00
tests: Adjust minimum wait/count timers for run_and_expect() if they are too low
If the developer pass way too low timers, we end up with most likely false-positive situations for random tests under a high load of the system. It would be better to fallback to the minimum default values for such a cases. E.g.: ``` WARNING: topo: Waiting time is too small (count=1, wait=0.5), using default values (count=20, wait=3) ``` Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
This commit is contained in:
parent
afe37c8698
commit
7cc6c9325e
@ -396,6 +396,9 @@ def run_and_expect(func, what, count=20, wait=3):
|
|||||||
waiting `wait` seconds between tries. By default it tries 20 times with
|
waiting `wait` seconds between tries. By default it tries 20 times with
|
||||||
3 seconds delay between tries.
|
3 seconds delay between tries.
|
||||||
|
|
||||||
|
Changing default count/wait values, please change them below also for
|
||||||
|
`minimum_wait`, and `minimum_count`.
|
||||||
|
|
||||||
Returns (True, func-return) on success or
|
Returns (True, func-return) on success or
|
||||||
(False, func-return) on failure.
|
(False, func-return) on failure.
|
||||||
|
|
||||||
@ -414,13 +417,18 @@ def run_and_expect(func, what, count=20, wait=3):
|
|||||||
|
|
||||||
# Just a safety-check to avoid running topotests with very
|
# Just a safety-check to avoid running topotests with very
|
||||||
# small wait/count arguments.
|
# small wait/count arguments.
|
||||||
|
# If too low count/wait values are defined, override them
|
||||||
|
# with the minimum values.
|
||||||
|
minimum_count = 20
|
||||||
|
minimum_wait = 3
|
||||||
|
minimum_wait_time = 15 # The overall minimum seconds for the test to wait
|
||||||
wait_time = wait * count
|
wait_time = wait * count
|
||||||
if wait_time < 5:
|
if wait_time < minimum_wait_time:
|
||||||
assert (
|
logger.warn(
|
||||||
wait_time >= 5
|
f"Waiting time is too small (count={count}, wait={wait}), using default values (count={minimum_count}, wait={minimum_wait})"
|
||||||
), "Waiting time is too small (count={}, wait={}), adjust timer values".format(
|
|
||||||
count, wait
|
|
||||||
)
|
)
|
||||||
|
count = minimum_count
|
||||||
|
wait = minimum_wait
|
||||||
|
|
||||||
logger.debug(
|
logger.debug(
|
||||||
"'{}' polling started (interval {} secs, maximum {} tries)".format(
|
"'{}' polling started (interval {} secs, maximum {} tries)".format(
|
||||||
|
Loading…
Reference in New Issue
Block a user