From 1168c5a74756a0d2283fe14e729155b847443a8a Mon Sep 17 00:00:00 2001 From: Carmine Scarpitta Date: Fri, 6 Sep 2024 23:23:56 +0200 Subject: [PATCH] tests: SRv6 SID Manager check ping Signed-off-by: Carmine Scarpitta --- .../srv6_sid_manager/test_srv6_sid_manager.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tests/topotests/srv6_sid_manager/test_srv6_sid_manager.py b/tests/topotests/srv6_sid_manager/test_srv6_sid_manager.py index d0a8a301cf..e4185d5c79 100644 --- a/tests/topotests/srv6_sid_manager/test_srv6_sid_manager.py +++ b/tests/topotests/srv6_sid_manager/test_srv6_sid_manager.py @@ -264,6 +264,22 @@ def router_compare_json_output(rname, command, reference): assert diff is None, assertmsg +def check_ping6(name, dest_addr, expect_connected): + def _check(name, dest_addr, match): + tgen = get_topogen() + output = tgen.gears[name].run("ping6 {} -c 1 -w 1".format(dest_addr)) + logger.info(output) + 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)) + tgen = get_topogen() + func = functools.partial(_check, name, dest_addr, match) + success, result = topotest.run_and_expect(func, None, count=10, wait=1) + assert result is None, "Failed" + + if __name__ == "__main__": args = ["-s"] + sys.argv[1:] sys.exit(pytest.main(args)) -- 2.39.5