mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-16 13:41:46 +00:00
tests: remove reliance on time.sleep
Use proper retry loop to wait for state to converge, not some arbitrary delay. fixes #15878 Signed-off-by: Christian Hopps <chopps@labn.net>
This commit is contained in:
parent
2130575b8c
commit
727633a046
@ -62,7 +62,8 @@ def disable_debug(router):
|
|||||||
router.vtysh_cmd("no debug northbound callbacks configuration")
|
router.vtysh_cmd("no debug northbound callbacks configuration")
|
||||||
|
|
||||||
|
|
||||||
def do_oper_test(tgen, query_results):
|
@retry(retry_timeout=30, initial_wait=1)
|
||||||
|
def _do_oper_test(tgen, qr):
|
||||||
r1 = tgen.gears["r1"].net
|
r1 = tgen.gears["r1"].net
|
||||||
|
|
||||||
qcmd = (
|
qcmd = (
|
||||||
@ -73,13 +74,9 @@ def do_oper_test(tgen, query_results):
|
|||||||
r"""| sed -e 's/"if-index": [0-9][0-9]*/"if-index": "rubout"/'"""
|
r"""| sed -e 's/"if-index": [0-9][0-9]*/"if-index": "rubout"/'"""
|
||||||
r"""| sed -e 's/"id": [0-9][0-9]*/"id": "rubout"/'"""
|
r"""| sed -e 's/"id": [0-9][0-9]*/"id": "rubout"/'"""
|
||||||
)
|
)
|
||||||
|
# Don't use this for now.
|
||||||
doreset = True
|
|
||||||
dd_json_cmp = None
|
dd_json_cmp = None
|
||||||
for qr in query_results:
|
|
||||||
step(f"Perform query '{qr[0]}'", reset=doreset)
|
|
||||||
if doreset:
|
|
||||||
doreset = False
|
|
||||||
expected = open(qr[1], encoding="ascii").read()
|
expected = open(qr[1], encoding="ascii").read()
|
||||||
output = r1.cmd_nostatus(qcmd.format(qr[0], qr[2] if len(qr) > 2 else ""))
|
output = r1.cmd_nostatus(qcmd.format(qr[0], qr[2] if len(qr) > 2 else ""))
|
||||||
|
|
||||||
@ -119,6 +116,15 @@ def do_oper_test(tgen, query_results):
|
|||||||
assert cmpout is None
|
assert cmpout is None
|
||||||
|
|
||||||
|
|
||||||
|
def do_oper_test(tgen, query_results):
|
||||||
|
reset = True
|
||||||
|
for qr in query_results:
|
||||||
|
step(f"Perform query '{qr[0]}'", reset=reset)
|
||||||
|
if reset:
|
||||||
|
reset = False
|
||||||
|
_do_oper_test(tgen, qr)
|
||||||
|
|
||||||
|
|
||||||
def get_ip_networks(super_prefix, count):
|
def get_ip_networks(super_prefix, count):
|
||||||
count_log2 = math.log(count, 2)
|
count_log2 = math.log(count, 2)
|
||||||
if count_log2 != int(count_log2):
|
if count_log2 != int(count_log2):
|
||||||
|
@ -95,7 +95,6 @@ def test_oper(tgen):
|
|||||||
check_kernel_32(r1, "12.12.12.12", 1, "")
|
check_kernel_32(r1, "12.12.12.12", 1, "")
|
||||||
check_kernel_32(r1, "13.13.13.13", 1, "red")
|
check_kernel_32(r1, "13.13.13.13", 1, "red")
|
||||||
check_kernel_32(r1, "14.14.14.14", 1, "red")
|
check_kernel_32(r1, "14.14.14.14", 1, "red")
|
||||||
time.sleep(2)
|
|
||||||
do_oper_test(tgen, query_results)
|
do_oper_test(tgen, query_results)
|
||||||
|
|
||||||
|
|
||||||
|
@ -52,7 +52,6 @@ def test_oper_simple(tgen):
|
|||||||
|
|
||||||
r1 = tgen.gears["r1"].net
|
r1 = tgen.gears["r1"].net
|
||||||
|
|
||||||
time.sleep(2)
|
|
||||||
count = 20 * 1000
|
count = 20 * 1000
|
||||||
|
|
||||||
vrf = None # "red"
|
vrf = None # "red"
|
||||||
|
Loading…
Reference in New Issue
Block a user