From 8800f732f868bf54da8adba05e38bd2477895ca5 Mon Sep 17 00:00:00 2001 From: Dave Wallace Date: Thu, 31 Aug 2023 00:47:44 -0400 Subject: tests: refactor asf framework code - Make framework.py classes a subset of asfframework.py classes - Remove all packet related code from asfframework.py - Add test class and test case set up debug output to log - Repatriate packet tests from asf to test directory - Remove non-packet related code from framework.py and inherit them from asfframework.py classes - Clean up unused import variables - Re-enable BFD tests on Ubuntu 22.04 and fix intermittent test failures in echo_looped_back testcases (where # control packets verified but not guaranteed to be received during test) - Re-enable Wireguard tests on Ubuntu 22.04 and fix intermittent test failures in handshake ratelimiting testcases and event testcase - Run Wiregard testcase suites solo - Improve debug output in log.txt - Increase VCL/LDP post sleep timeout to allow iperf server to finish cleanly. - Fix pcap history files to be sorted by suite and testcase and ensure order/timestamp is correct based on creation in the testcase. - Decode pcap files for each suite and testcase for all errors or if configured via comandline option / env var - Improve vpp corefile detection to allow complete corefile generation - Disable vm vpp interfaces testcases on debian11 - Clean up failed unittest dir when retrying failed testcases and unify testname directory and failed linknames into framwork functions Type: test Change-Id: I0764f79ea5bb639d278bf635ed2408d4d5220e1e Signed-off-by: Dave Wallace --- test/run_tests.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'test/run_tests.py') diff --git a/test/run_tests.py b/test/run_tests.py index 70608af391d..19ab9052d5c 100644 --- a/test/run_tests.py +++ b/test/run_tests.py @@ -14,12 +14,14 @@ from multiprocessing import Process, Pipe, get_context from multiprocessing.queues import Queue from multiprocessing.managers import BaseManager from config import config, num_cpus, available_cpus, max_vpp_cpus -from framework import ( +from asfframework import ( VppTestRunner, - VppTestCase, get_testcase_doc_name, get_test_description, + get_failed_testcase_linkname, + get_testcase_dirname, ) +from framework import VppTestCase from test_result_code import TestResultCode from debug import spawn_gdb from log import ( @@ -1057,6 +1059,13 @@ if __name__ == "__main__": ) exit_code = 0 while suites and attempts > 0: + for suite in suites: + failed_link = get_failed_testcase_linkname( + config.failed_dir, + f"{get_testcase_dirname(suite._tests[0].__class__.__name__)}", + ) + if os.path.islink(failed_link): + os.unlink(failed_link) results = run_forked(suites) exit_code, suites = parse_results(results) attempts -= 1 -- cgit 1.2.3-korg