From 22c10bbdaa352f3571bfb0c2594d1c58bd79e6ff Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Tue, 30 May 2023 15:20:56 -0400 Subject: [PATCH] tests: Actually loop if ping fails The usage of run_and_expect doesn't work if the function being called as the run part asserts. Signed-off-by: Donald Sharp --- .../test_bgp_srv6l3vpn_to_bgp_vrf3.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/test_bgp_srv6l3vpn_to_bgp_vrf3.py b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/test_bgp_srv6l3vpn_to_bgp_vrf3.py index eb0f30f84a..7c2c7cfdaa 100644 --- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/test_bgp_srv6l3vpn_to_bgp_vrf3.py +++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/test_bgp_srv6l3vpn_to_bgp_vrf3.py @@ -98,7 +98,8 @@ def check_ping4(name, dest_addr, expect_connected): tgen = get_topogen() output = tgen.gears[name].run("ping {} -c 1 -w 1".format(dest_addr)) logger.info(output) - assert match in output, "ping fail" + if match not in output: + return "ping fail" match = ", {} packet loss".format("0%" if expect_connected else "100%") logger.info("[+] check {} {} {}".format(name, dest_addr, match)) -- 2.39.5