This is an automated email from the ASF dual-hosted git repository.
joshtynjala pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git
The following commit(s) were added to refs/heads/develop by this push:
new 8378f7f RoyaleUnit: CIListener escapes attributes with the correct
type to fix issue where quotes were not escaped properly
8378f7f is described below
commit 8378f7f728ca619478f6cdf0f2ae04700de2e94f
Author: Josh Tynjala <[email protected]>
AuthorDate: Tue May 26 10:34:32 2020 -0700
RoyaleUnit: CIListener escapes attributes with the correct type to fix
issue where quotes were not escaped properly
---
.../org/apache/royale/test/listeners/CIListener.as | 31 +++++++++++-----------
1 file changed, 16 insertions(+), 15 deletions(-)
diff --git
a/frameworks/projects/RoyaleUnit/src/main/royale/org/apache/royale/test/listeners/CIListener.as
b/frameworks/projects/RoyaleUnit/src/main/royale/org/apache/royale/test/listeners/CIListener.as
index a21d4c9..127f22f 100644
---
a/frameworks/projects/RoyaleUnit/src/main/royale/org/apache/royale/test/listeners/CIListener.as
+++
b/frameworks/projects/RoyaleUnit/src/main/royale/org/apache/royale/test/listeners/CIListener.as
@@ -208,8 +208,8 @@ package org.apache.royale.test.listeners
//whitespace in the XML to be formatted in an exact way
var xml:String =
"<testcase" +
- " classname=\"" +
escapeXML(descriptor.suite) + "\"" +
- " name=\"" +
escapeXML(descriptor.method) + "\"" +
+ " classname=\"" +
escapeXMLAttribute(descriptor.suite) + "\"" +
+ " name=\"" +
escapeXMLAttribute(descriptor.method) + "\"" +
" time=\"" + lastTestTime + "\"" +
" status=\"" + STATUS_SUCCESS + "\"" +
" />"
@@ -220,7 +220,7 @@ package org.apache.royale.test.listeners
/**
* @private
*/
- protected function escapeXML(value:String):String
+ protected function escapeXMLAttribute(value:String):String
{
if(value == null)
{
@@ -234,8 +234,9 @@ package org.apache.royale.test.listeners
COMPILE::JS
{
var serializer:XMLSerializer = new
XMLSerializer()
- var textNode:Text =
document.createTextNode(value);
- return serializer.serializeToString(textNode);
+ var attr:Attr =
document.createAttribute("attr");
+ attr.value = value;
+ return serializer.serializeToString(attr);
}
}
@@ -250,8 +251,8 @@ package org.apache.royale.test.listeners
//whitespace in the XML to be formatted in an exact way
var xml:String =
"<testcase" +
- " classname=\"" +
escapeXML(descriptor.suite) + "\"" +
- " name=\"" +
escapeXML(descriptor.method) + "\"" +
+ " classname=\"" +
escapeXMLAttribute(descriptor.suite) + "\"" +
+ " name=\"" +
escapeXMLAttribute(descriptor.method) + "\"" +
" time=\"0\"" +
" status=\"" + STATUS_IGNORE + "\"" +
">" +
@@ -276,14 +277,14 @@ package org.apache.royale.test.listeners
//whitespace in the XML to be formatted in an
exact way
xml =
"<testcase" +
- " classname=\"" +
escapeXML(descriptor.suite) + "\"" +
- " name=\"" +
escapeXML(descriptor.method) + "\"" +
+ " classname=\"" +
escapeXMLAttribute(descriptor.suite) + "\"" +
+ " name=\"" +
escapeXMLAttribute(descriptor.method) + "\"" +
" time=\"" + lastTestTime +
"\"" +
" status=\"" + STATUS_FAILURE +
"\"" +
">" +
"<failure" +
- " message=\"" +
escapeXML(failure.message) + "\"" +
- " type=\"" +
escapeXML(failure.description) + "\"" +
+ " message=\"" +
escapeXMLAttribute(failure.message) + "\"" +
+ " type=\"" +
escapeXMLAttribute(failure.description) + "\"" +
">" +
"<![CDATA[" +
failure.stackTrace + "]]>" +
"</failure>" +
@@ -295,14 +296,14 @@ package org.apache.royale.test.listeners
//whitespace in the XML to be formatted in an
exact way
xml =
"<testcase" +
- " classname=\"" +
escapeXML(descriptor.suite) + "\"" +
- " name=\"" +
escapeXML(descriptor.method) + "\"" +
+ " classname=\"" +
escapeXMLAttribute(descriptor.suite) + "\"" +
+ " name=\"" +
escapeXMLAttribute(descriptor.method) + "\"" +
" time=\"" + lastTestTime +
"\"" +
" status=\"" + STATUS_ERROR +
"\"" +
">" +
"<error" +
- " message=\"" +
escapeXML(failure.message) + "\"" +
- " type=\"" +
escapeXML(failure.description) + "\"" +
+ " message=\"" +
escapeXMLAttribute(failure.message) + "\"" +
+ " type=\"" +
escapeXMLAttribute(failure.description) + "\"" +
">" +
"<![CDATA[" +
failure.stackTrace + "]]>" +
"</error>" +