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-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to