stylize_as_junit.rb: XML escape test name

If you had a TEST_CASE which contained a quoted string as a parameter
then the xml generated would be invalid.
This commit is contained in:
Christer Fletcher
2025-12-16 09:15:24 +01:00
parent 51d2db98e2
commit 71227c64df
+2
View File
@@ -6,6 +6,7 @@
# SPDX-License-Identifier: MIT
# =========================================================================
require 'cgi'
require 'fileutils'
require 'optparse'
require 'ostruct'
@@ -143,6 +144,7 @@ class UnityToJUnit
lines.each do |line|
line = line.tr('\\', '/')
_src_file, src_line, test_name, status, msg = line.split(/:/)
test_name = CGI.escapeHTML(test_name.to_s)
case status
when 'IGNORE' then results[:ignores] << { test: test_name, line: src_line, message: msg }
when 'FAIL' then results[:failures] << { test: test_name, line: src_line, message: msg }