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: [email protected]
For additional commands, e-mail: [email protected]