[java-support] branch master updated: JSPT-83 - ElementSupport.getElementContentAsString is broken

Ian Young ian at iay.org.uk
Mon Oct 29 11:47:44 EDT 2018


This is an automated email from the git hooks/post-receive script.

iay pushed a commit to branch master
in repository java-support.

View the commit online:
http://git.shibboleth.net/view/?p=java-support.git;a=commit;h=443457f5ed7ab3cd6fc5390a4da87693ce8daaac

The following commit(s) were added to refs/heads/master by this push:
       new  443457f   JSPT-83 - ElementSupport.getElementContentAsString is broken
443457f is described below

commit 443457f5ed7ab3cd6fc5390a4da87693ce8daaac
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Wed Oct 24 20:41:47 2018 -0400

    JSPT-83 - ElementSupport.getElementContentAsString is broken
    
    https://issues.shibboleth.net/jira/browse/JSPT-83
---
 .../net/shibboleth/utilities/java/support/xml/ElementSupport.java | 8 +-------
 .../shibboleth/utilities/java/support/xml/ElementSupportTest.java | 8 +++++---
 .../shibboleth/utilities/java/support/xml/elementSupportTest.xml  | 2 +-
 3 files changed, 7 insertions(+), 11 deletions(-)

diff --git a/src/main/java/net/shibboleth/utilities/java/support/xml/ElementSupport.java b/src/main/java/net/shibboleth/utilities/java/support/xml/ElementSupport.java
index c701c1c..57830ab 100644
--- a/src/main/java/net/shibboleth/utilities/java/support/xml/ElementSupport.java
+++ b/src/main/java/net/shibboleth/utilities/java/support/xml/ElementSupport.java
@@ -292,15 +292,9 @@ public final class ElementSupport {
         final StringBuilder builder = new StringBuilder();
 
         Node node = element.getFirstChild();
-        boolean first = true;
         while (node != null) {
             if (node.getNodeType() == Node.TEXT_NODE || node.getNodeType() == Node.CDATA_SECTION_NODE) {
-                if (first) {
-                    first = false;
-                } else {
-                    builder.append(XMLConstants.LIST_DELIMITERS.charAt(0));
-                }
-                builder.append(((Text) node).getWholeText());
+                builder.append(((Text) node).getNodeValue());
             }
             node = node.getNextSibling();
         }
diff --git a/src/test/java/net/shibboleth/utilities/java/support/xml/ElementSupportTest.java b/src/test/java/net/shibboleth/utilities/java/support/xml/ElementSupportTest.java
index 70a4df9..8c18e12 100644
--- a/src/test/java/net/shibboleth/utilities/java/support/xml/ElementSupportTest.java
+++ b/src/test/java/net/shibboleth/utilities/java/support/xml/ElementSupportTest.java
@@ -69,6 +69,8 @@ public class ElementSupportTest {
     @BeforeTest public void setUp() throws XMLParserException, ComponentInitializationException, SAXException,
             IOException {
         parserPool = new BasicParserPool();
+        parserPool.setCoalescing(false);
+        
         parserPool.initialize();
 
         DocumentBuilder builder = parserPool.getBuilder();
@@ -174,7 +176,7 @@ public class ElementSupportTest {
                 ElementSupport.getChildElementsByTagName(
                         ElementSupport.getChildElementsByTagName(rootElement, "Element4").get(0), "Element1").get(0);
 
-        Assert.assertEquals(ElementSupport.getElementContentAsString(interesting), "Some Random" + "\n" + "test");
+        Assert.assertEquals(ElementSupport.getElementContentAsString(interesting), "Some Random foo" + "\n" + "test");
     }
 
     @Test(dependsOnMethods = {"testGetChildElementsByTagName"}) public void testGetElementContentAsList() {
@@ -189,7 +191,7 @@ public class ElementSupportTest {
                         ElementSupport.getChildElementsByTagName(rootElement, "Element4").get(0), "Element1").get(0);
 
         Assert.assertEquals(ElementSupport.getElementContentAsList(interesting),
-                Arrays.asList("Some", "Random", "test"));
+                Arrays.asList("Some", "Random", "foo", "test"));
 
     }
 
@@ -204,7 +206,7 @@ public class ElementSupportTest {
 
         Assert.assertEquals(ElementSupport.getElementContentAsQName(children.get(0)), new QName(OTHER_NS, "localname"));
         Assert.assertNull(ElementSupport.getElementContentAsQName(children.get(1)),
-                "getElementContentAsQName: invalid qname shuld return null");
+                "getElementContentAsQName: invalid qname should return null");
     }
 
     @Test(dependsOnMethods = {"testIsElementNamed"}) public void testGetChildAndNext() {
diff --git a/src/test/resources/net/shibboleth/utilities/java/support/xml/elementSupportTest.xml b/src/test/resources/net/shibboleth/utilities/java/support/xml/elementSupportTest.xml
index 18f4c80..ad33324 100644
--- a/src/test/resources/net/shibboleth/utilities/java/support/xml/elementSupportTest.xml
+++ b/src/test/resources/net/shibboleth/utilities/java/support/xml/elementSupportTest.xml
@@ -15,7 +15,7 @@
         />
     <myns:Element4
     >
-        <myns:Element1>Some Random
+        <myns:Element1>Some Random <![CDATA[foo]]>
 test</myns:Element1>
         <myns:QName>otherns:localname</myns:QName>
         <myns:QName>myns:text:text</myns:QName>

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list