Author: matthieu
Date: Mon Nov  2 13:42:37 2015
New Revision: 1711973

URL: http://svn.apache.org/viewvc?rev=1711973&view=rev
Log:
JAMES-1595 write tests around mappingToCollection

Modified:
    
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/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=1711973&r1=1711972&r2=1711973&view=diff
==============================================================================
--- 
james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RecipientRewriteTableUtilTest.java
 (original)
+++ 
james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RecipientRewriteTableUtilTest.java
 Mon Nov  2 13:42:37 2015
@@ -1,11 +1,13 @@
 package org.apache.james.rrt.lib;
 
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.util.List;
+
 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)
@@ -30,5 +32,97 @@ public class RecipientRewriteTableUtilTe
         String actual = 
RecipientRewriteTableUtil.CollectionToMapping(ImmutableList.of("value1", 
"value2"));
         assertThat(actual).isEqualTo("value1;value2");
     }
+    
+    @Test(expected=NullPointerException.class)
+    public void mappingToCollectionShouldThrowWhenNull() {
+        RecipientRewriteTableUtil.mappingToCollection(null);
+    }
+
+    @Test
+    public void 
mappingToCollectionShouldReturnEmptyCollectionWhenEmptyString() {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("");
+        assertThat(actual).isEmpty();
+    }
+    
+    @Test
+    public void 
mappingToCollectionShouldReturnSingletonCollectionWhenSingleElementString() {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("value");
+        assertThat(actual).containsExactly("value");
+    }
+
+    @Test
+    public void 
mappingToCollectionShouldReturnCollectionWhenSeveralElementsString() {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("value1;value2");
+        assertThat(actual).containsExactly("value1", "value2");
+    }
+    
+    @Test
+    public void 
mappingToCollectionShouldReturnSingleElementCollectionWhenTrailingDelimiterString()
 {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("value1;");
+        assertThat(actual).containsExactly("value1");
+    }
+
+    @Test
+    public void 
mappingToCollectionShouldReturnSingleElementCollectionWhenHeadingDelimiterString()
 {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection(";value1");
+        assertThat(actual).containsExactly("value1");
+    }
+    
+
+    @Test
+    public void mappingToCollectionShouldTrimValues() {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("value1 ; value2  ");
+        assertThat(actual).containsExactly("value1", "value2");
+    }
+    
+    @Test
+    public void mappingToCollectionShouldNotSkipEmptyValue() {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("value1; ;value2");
+        assertThat(actual).containsExactly("value1", "", "value2");
+    }
+    
+    @Test
+    public void 
mappingToCollectionShouldReturnCollectionWhenValueContainsCommaSeperatedValues()
 {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("value1,value2");
+        assertThat(actual).containsExactly("value1","value2");
+    }
+
+    @Test
+    public void 
mappingToCollectionShouldReturnCollectionWhenValueContainsColonSeperatedValues()
 {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("value1:value2");
+        assertThat(actual).containsExactly("value1","value2");
+    }
+
+    @Test
+    public void 
mappingToCollectionShouldUseCommaDelimiterBeforeSemicolonWhenValueContainsBoth()
 {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("value1;value1,value2");
+        assertThat(actual).containsExactly("value1;value1","value2");
+    }
+
+    @Test
+    public void 
mappingToCollectionShouldUseSemicolonDelimiterBeforeColonWhenValueContainsBoth()
 {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("value1:value1;value2");
+        assertThat(actual).containsExactly("value1:value1","value2");
+    }
+    
+    @Test
+    public void 
mappingToCollectionShouldNotUseColonDelimiterWhenValueStartsWithError() {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("error:test");
+        assertThat(actual).containsExactly("error:test");
+    }
+    
+
+    @Test
+    public void 
mappingToCollectionShouldNotUseColonDelimiterWhenValueStartsWithDomain() {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("domain:test");
+        assertThat(actual).containsExactly("domain:test");
+    }
+    
+
+    @Test
+    public void 
mappingToCollectionShouldNotUseColonDelimiterWhenValueStartsWithRegex() {
+        List<String> actual = 
RecipientRewriteTableUtil.mappingToCollection("regex:test");
+        assertThat(actual).containsExactly("regex:test");
+    }
 
 }



---------------------------------------------------------------------
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