From d157212a2141f9021fccd270fbdf685899773581 Mon Sep 17 00:00:00 2001 From: Carmine Scarpitta Date: Fri, 6 Sep 2024 23:23:37 +0200 Subject: [PATCH] tests: SRv6 SID Manager json cmp 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 1e1a5e8b20..d0a8a301cf 100644 --- a/tests/topotests/srv6_sid_manager/test_srv6_sid_manager.py +++ b/tests/topotests/srv6_sid_manager/test_srv6_sid_manager.py @@ -248,6 +248,22 @@ def teardown_module(mod): tgen.stop_topology() +def router_compare_json_output(rname, command, reference): + "Compare router JSON output" + + logger.info('Comparing router "%s" "%s" output', rname, command) + + tgen = get_topogen() + filename = "{}/{}/{}".format(CWD, rname, reference) + expected = json.loads(open(filename).read()) + + # Run test function until we get an result. Wait at most 60 seconds. + test_func = functools.partial(topotest.router_json_cmp, tgen.gears[rname], command, expected) + _, diff = topotest.run_and_expect(test_func, None, count=120, wait=0.5) + assertmsg = '"{}" JSON output mismatches the expected result'.format(rname) + assert diff is None, assertmsg + + if __name__ == "__main__": args = ["-s"] + sys.argv[1:] sys.exit(pytest.main(args)) -- 2.39.5