Author: matthieu
Date: Mon Nov  2 13:42:26 2015
New Revision: 1711972

URL: http://svn.apache.org/viewvc?rev=1711972&view=rev
Log:
JAMES-1595 refactor CollectionToMapping function

Added:
    
james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RecipientRewriteTableUtilTest.java
Modified:
    
james/project/trunk/server/data/data-library/src/main/java/org/apache/james/rrt/lib/RecipientRewriteTableUtil.java

Modified: 
james/project/trunk/server/data/data-library/src/main/java/org/apache/james/rrt/lib/RecipientRewriteTableUtil.java
URL: 
http://svn.apache.org/viewvc/james/project/trunk/server/data/data-library/src/main/java/org/apache/james/rrt/lib/RecipientRewriteTableUtil.java?rev=1711972&r1=1711971&r2=1711972&view=diff
==============================================================================
--- 
james/project/trunk/server/data/data-library/src/main/java/org/apache/james/rrt/lib/RecipientRewriteTableUtil.java
 (original)
+++ 
james/project/trunk/server/data/data-library/src/main/java/org/apache/james/rrt/lib/RecipientRewriteTableUtil.java
 Mon Nov  2 13:42:26 2015
@@ -21,7 +21,6 @@ package org.apache.james.rrt.lib;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.HashMap;
-import java.util.Iterator;
 import java.util.Map;
 import java.util.StringTokenizer;
 import java.util.regex.Matcher;
@@ -31,6 +30,8 @@ import java.util.regex.PatternSyntaxExce
 import org.apache.james.rrt.api.RecipientRewriteTable;
 import org.apache.mailet.MailAddress;
 
+import com.google.common.base.Joiner;
+
 /**
  * This helper class contains methods for the RecipientRewriteTable 
implementations
  */
@@ -246,15 +247,7 @@ public class RecipientRewriteTableUtil {
      * @return mapping the mapping String
      */
     public static String CollectionToMapping(Collection<String> map) {
-        StringBuilder mapping = new StringBuilder();
-        Iterator<String> mappings = map.iterator();
-        while (mappings.hasNext()) {
-            mapping.append(mappings.next());
-            if (mappings.hasNext()) {
-                mapping.append(";");
-            }
-        }
-        return mapping.toString();
+        return Joiner.on(';').join(map);
     }
 
 }

Added: 
james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RecipientRewriteTableUtilTest.java
URL: 
http://svn.apache.org/viewvc/james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RecipientRewriteTableUtilTest.java?rev=1711972&view=auto
==============================================================================
--- 
james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RecipientRewriteTableUtilTest.java
 (added)
+++ 
james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RecipientRewriteTableUtilTest.java
 Mon Nov  2 13:42:26 2015
@@ -0,0 +1,34 @@
+package org.apache.james.rrt.lib;
+
+import org.junit.Test;
+
+import com.google.common.collect.ImmutableList;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+public class RecipientRewriteTableUtilTest {
+
+    @Test(expected=NullPointerException.class)
+    public void collectionToMappingShouldThrowWhenNull() {
+        RecipientRewriteTableUtil.CollectionToMapping(null);
+    }
+    
+    @Test
+    public void 
collectionToMappingShouldReturnEmptyStringWhenEmptyCollection() {
+        String actual = 
RecipientRewriteTableUtil.CollectionToMapping(ImmutableList.<String>of());
+        assertThat(actual).isEmpty();
+    }
+
+    @Test
+    public void 
collectionToMappingShouldReturnSimpleValueWhenSingleElementCollection() {
+        String actual = 
RecipientRewriteTableUtil.CollectionToMapping(ImmutableList.of("value"));
+        assertThat(actual).isEqualTo("value");
+    }
+
+    @Test
+    public void 
collectionToMappingShouldReturnSeparatedValuesWhenSeveralElementsCollection() {
+        String actual = 
RecipientRewriteTableUtil.CollectionToMapping(ImmutableList.of("value1", 
"value2"));
+        assertThat(actual).isEqualTo("value1;value2");
+    }
+
+}



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to