mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
[LIT] Handle xml characters in test names
Lit creates malformed xml when the test case has an & in the name. Escape those correctly. This also adds a test case which I will add other nasty encoding issues to in some followup commits. llvm-svn: 331942
This commit is contained in:
parent
e3372a717a
commit
a7a8db71f5
@ -361,7 +361,7 @@ class Test:
|
||||
return self.suite.config.is_early
|
||||
|
||||
def getJUnitXML(self):
|
||||
test_name = self.path_in_suite[-1]
|
||||
test_name = escape(self.path_in_suite[-1])
|
||||
test_path = self.path_in_suite[:-1]
|
||||
safe_test_path = [x.replace(".","_") for x in test_path]
|
||||
safe_name = self.suite.name.replace(".","-")
|
||||
|
@ -12,8 +12,19 @@
|
||||
# CHECK-NEXT: "value0": 1,
|
||||
# CHECK-NEXT: "value1": 2.3456
|
||||
# CHECK-NEXT: }
|
||||
# CHECK-NEXT: "name": "test-data :: bad&name.ini",
|
||||
# CHECK-NEXT: "output": "& < > \""
|
||||
# CHECK-NEXT: },
|
||||
# CHECK-NEXT: {
|
||||
# CHECK-NEXT: "code": "PASS",
|
||||
# CHECK-NEXT: "elapsed": {{[0-9.]+}},
|
||||
# CHECK-NEXT: "metrics": {
|
||||
# CHECK-NEXT: "value0": 1,
|
||||
# CHECK-NEXT: "value1": 2.3456
|
||||
# CHECK-NEXT: }
|
||||
# CHECK-NEXT: "name": "test-data :: metrics.ini",
|
||||
# CHECK-NEXT: "output": "Test passed."
|
||||
# CHECK-NEXT: }
|
||||
|
||||
# CHECK-NEXT: ]
|
||||
# CHECK-NEXT: }
|
||||
|
@ -4,7 +4,8 @@
|
||||
|
||||
# CHECK: <?xml version="1.0" encoding="UTF-8" ?>
|
||||
# CHECK: <testsuites>
|
||||
# CHECK: <testsuite name='test-data' tests='1' failures='0'>
|
||||
# CHECK: <testsuite name='test-data' tests='2' failures='0'>
|
||||
# CHECK: <testcase classname='test-data.test-data' name='bad&name.ini' time='{{[0-1]}}.{{[0-9]+}}'/>
|
||||
# CHECK: <testcase classname='test-data.test-data' name='metrics.ini' time='{{[0-1]}}.{{[0-9]+}}'/>
|
||||
# CHECK: </testsuite>
|
||||
# CHECK: </testsuites>
|
||||
|
Loading…
Reference in New Issue
Block a user