[java-metadata-aggregator] branch main updated: MDA-213 - WhitespaceTrimmingVisitor should trim more whitespace characters

Ian Young ian at iay.org.uk
Thu Apr 20 15:09:41 UTC 2023


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

iay pushed a commit to branch main
in repository java-metadata-aggregator.

View the commit online:
http://git.shibboleth.net/view/?p=java-metadata-aggregator.git;a=commit;h=29fad81050b0dea376f942b7d5044a409d91f3ed

The following commit(s) were added to refs/heads/main by this push:
     new 29fad81  MDA-213 - WhitespaceTrimmingVisitor should trim more whitespace characters
29fad81 is described below

commit 29fad81050b0dea376f942b7d5044a409d91f3ed
Author: Ian Young <ian at iay.org.uk>
AuthorDate: Thu Apr 20 16:06:48 2023 +0100

    MDA-213 - WhitespaceTrimmingVisitor should trim more whitespace characters
    
    https://shibboleth.atlassian.net/browse/MDA-213
---
 .../metadata/dom/WhitespaceTrimmingVisitor.java    |  2 +-
 .../dom/WhitespaceTrimmingVisitorTest.java         | 27 ++++++++++++++++------
 2 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/mda-framework/src/main/java/net/shibboleth/metadata/dom/WhitespaceTrimmingVisitor.java b/mda-framework/src/main/java/net/shibboleth/metadata/dom/WhitespaceTrimmingVisitor.java
index 7b57c25..afc0b1f 100644
--- a/mda-framework/src/main/java/net/shibboleth/metadata/dom/WhitespaceTrimmingVisitor.java
+++ b/mda-framework/src/main/java/net/shibboleth/metadata/dom/WhitespaceTrimmingVisitor.java
@@ -38,7 +38,7 @@ class WhitespaceTrimmingVisitor implements NodeVisitor, ElementVisitor, AttrVisi
     @Override
     public void visitNode(@Nonnull final Node visited, @Nonnull final Item<Element> item) {
         final String originalText = visited.getTextContent();
-        final String newText = originalText.trim();
+        final String newText = originalText.strip();
         visited.setTextContent(newText);
     }
 
diff --git a/mda-framework/src/test/java/net/shibboleth/metadata/dom/WhitespaceTrimmingVisitorTest.java b/mda-framework/src/test/java/net/shibboleth/metadata/dom/WhitespaceTrimmingVisitorTest.java
index 83ec193..3d57f0e 100644
--- a/mda-framework/src/test/java/net/shibboleth/metadata/dom/WhitespaceTrimmingVisitorTest.java
+++ b/mda-framework/src/test/java/net/shibboleth/metadata/dom/WhitespaceTrimmingVisitorTest.java
@@ -18,6 +18,7 @@
 
 package net.shibboleth.metadata.dom;
 
+import javax.annotation.Nonnull;
 import javax.xml.parsers.DocumentBuilder;
 
 import org.testng.Assert;
@@ -26,19 +27,19 @@ import org.w3c.dom.Attr;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
+import net.shibboleth.metadata.Item;
 import net.shibboleth.metadata.dom.saml.SAMLMetadataSupport;
 import net.shibboleth.metadata.dom.testing.BaseDOMTest;
 import net.shibboleth.shared.xml.ElementSupport;
 import net.shibboleth.shared.xml.ParserPool;
 
 public class WhitespaceTrimmingVisitorTest extends BaseDOMTest {
-    
-    /** Constructor sets class under test. */
+
     public WhitespaceTrimmingVisitorTest() {
         super(WhitespaceTrimmingVisitor.class);
     }
     
-    private DOMElementItem makeItem() throws Exception {
+    private @Nonnull Item<Element> makeItem() throws Exception {
         final ParserPool parserPool = getParserPool();
         final DocumentBuilder builder = parserPool.getBuilder();
         final Document document = builder.newDocument();
@@ -48,10 +49,10 @@ public class WhitespaceTrimmingVisitorTest extends BaseDOMTest {
         ElementSupport.setDocumentElement(document, element);
         return new DOMElementItem(element);
     }
-    
+
     @Test
     public void visitAttr() throws Exception {
-        final DOMElementItem item = makeItem();
+        final var item = makeItem();
         final Document doc = item.unwrap().getOwnerDocument();
         final Attr attr = doc.createAttribute("foo");
         attr.setTextContent("   trimmed   \n\n   \t   ");
@@ -62,7 +63,7 @@ public class WhitespaceTrimmingVisitorTest extends BaseDOMTest {
 
     @Test
     public void visitElement() throws Exception {
-        final DOMElementItem item = makeItem();
+        final var item = makeItem();
         final Document doc = item.unwrap().getOwnerDocument();
         final Element e = doc.createElement("foo");
         e.setTextContent("   trimmed   \n\n   \t   ");
@@ -73,7 +74,7 @@ public class WhitespaceTrimmingVisitorTest extends BaseDOMTest {
 
     @Test
     public void visitNode() throws Exception {
-        final DOMElementItem item = makeItem();
+        final var item = makeItem();
         final Document doc = item.unwrap().getOwnerDocument();
         final Attr attr = doc.createAttribute("foo");
         attr.setTextContent("   trimmed   \n\n   \t   ");
@@ -81,4 +82,16 @@ public class WhitespaceTrimmingVisitorTest extends BaseDOMTest {
         nv.visitNode(attr, item);
         Assert.assertEquals(attr.getTextContent(), "trimmed");
     }
+
+    @Test
+    public void mda213() throws Exception {
+        final var allWhitespace = " \t \r \n\u2028";
+        final var item = makeItem();
+        final Document doc = item.unwrap().getOwnerDocument();
+        final Attr attr = doc.createAttribute("foo");
+        attr.setTextContent(allWhitespace + "trimmed" + allWhitespace);
+        final NodeVisitor nv = new WhitespaceTrimmingVisitor();
+        nv.visitNode(attr, item);
+        Assert.assertEquals(attr.getTextContent(), "trimmed");
+    }
 }

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


More information about the commits mailing list