From 7b8b749d3ae3027f1ae2fed91a1f0406d1190048 Mon Sep 17 00:00:00 2001 From: Yiqing Yan Date: Wed, 10 Dec 2025 04:51:05 +0000 Subject: [PATCH] fix pre-commit Signed-off-by: Yiqing Yan --- jenkins/scripts/generate_timeout_xml.py | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/jenkins/scripts/generate_timeout_xml.py b/jenkins/scripts/generate_timeout_xml.py index 921e12622c..b99ee775b7 100644 --- a/jenkins/scripts/generate_timeout_xml.py +++ b/jenkins/scripts/generate_timeout_xml.py @@ -1,5 +1,6 @@ import argparse import sys +from html import escape def parse_xml_classname_name_file_from_testname(testname, stage_name): @@ -43,14 +44,28 @@ def parse_xml_classname_name_file_from_testname(testname, stage_name): def generate_timeout_xml(testList, stage_name): - xmlContent = f""" - """ + num_tests = len(testList) + # Escape stage_name for XML safety + stage_name_escaped = escape(stage_name, quote=True) + xmlContent = ( + f'\n' + f' ' + ) for test in testList: classname, name, file = parse_xml_classname_name_file_from_testname(test, stage_name) - xmlContent += f""" - Test terminated unexpectedly - """ + # Escape all XML attribute values + classname_escaped = escape(classname, quote=True) + name_escaped = escape(name, quote=True) + file_escaped = escape(file, quote=True) + xmlContent += ( + f'\n' + f' ' + f' Test terminated unexpectedly\n' + f' ' + ) xmlContent += "" print(xmlContent)