You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2015/07/09 09:42:15 UTC

svn commit: r1690001 - in /james/server/trunk/container/mailbox-adapter/src: main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java test/java/org/apache/james/adapter/mailbox/MailboxManagementTest.java

Author: btellier
Date: Thu Jul  9 07:42:15 2015
New Revision: 1690001

URL: http://svn.apache.org/r1690001
Log:
JAMES-1584 Tests for create mailbox command

Modified:
    james/server/trunk/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java
    james/server/trunk/container/mailbox-adapter/src/test/java/org/apache/james/adapter/mailbox/MailboxManagementTest.java

Modified: james/server/trunk/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java
URL: http://svn.apache.org/viewvc/james/server/trunk/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java?rev=1690001&r1=1690000&r2=1690001&view=diff
==============================================================================
--- james/server/trunk/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java (original)
+++ james/server/trunk/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java Thu Jul  9 07:42:15 2015
@@ -128,6 +128,7 @@ public class MailboxManagerManagement ex
 
     @Override
     public void createMailbox(String namespace, String user, String name) {
+        Preconditions.checkArgument(namespace != null && user != null && name != null, "Provided mailbox path components should not be null");
         try {
             MailboxSession session = mailboxManager.createSystemSession(user, log);
             mailboxManager.createMailbox(new MailboxPath(namespace, user, name), session);

Modified: james/server/trunk/container/mailbox-adapter/src/test/java/org/apache/james/adapter/mailbox/MailboxManagementTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/container/mailbox-adapter/src/test/java/org/apache/james/adapter/mailbox/MailboxManagementTest.java?rev=1690001&r1=1690000&r2=1690001&view=diff
==============================================================================
--- james/server/trunk/container/mailbox-adapter/src/test/java/org/apache/james/adapter/mailbox/MailboxManagementTest.java (original)
+++ james/server/trunk/container/mailbox-adapter/src/test/java/org/apache/james/adapter/mailbox/MailboxManagementTest.java Thu Jul  9 07:42:15 2015
@@ -122,4 +122,35 @@ public class MailboxManagementTest {
         assertThat(inMemoryMapperFactory.createMailboxMapper(session).list()).isEmpty();
     }
 
+    @Test
+    public void createMailboxShouldCreateAMailbox() throws Exception {
+        mailboxManagerManagement.createMailbox(MailboxConstants.USER_NAMESPACE, USER, "name");
+        assertThat(inMemoryMapperFactory.createMailboxMapper(session).list()).hasSize(1);
+        assertThat(inMemoryMapperFactory.createMailboxMapper(session).findMailboxByPath(new MailboxPath(MailboxConstants.USER_NAMESPACE, USER, "name"))).isNotNull();
+    }
+
+    @Test
+    public void createMailboxShouldNotThrowIfMailboxAlreadyExist() throws Exception {
+        MailboxPath path = new MailboxPath(MailboxConstants.USER_NAMESPACE, USER, "name");
+        Mailbox<InMemoryId> mailbox = new SimpleMailbox<InMemoryId>(path, UID_VALIDITY);
+        inMemoryMapperFactory.createMailboxMapper(session).save(mailbox);
+        mailboxManagerManagement.createMailbox(MailboxConstants.USER_NAMESPACE, USER, "name");
+        assertThat(inMemoryMapperFactory.createMailboxMapper(session).list()).containsExactly(mailbox);
+    }
+
+    @Test(expected = IllegalArgumentException.class)
+    public void createMailboxShouldThrowOnNullNamespace() {
+        mailboxManagerManagement.createMailbox(null, "", "");
+    }
+
+    @Test(expected = IllegalArgumentException.class)
+    public void createMailboxShouldThrowOnNullUser() {
+        mailboxManagerManagement.createMailbox("", null, "");
+    }
+
+    @Test(expected = IllegalArgumentException.class)
+    public void createMailboxShouldThrowOnNullName() {
+        mailboxManagerManagement.createMailbox("", "", null);
+    }
+
 }



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