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 <joshtynj...@apache.org>
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>" +

Reply via email to