This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit ed279d508974f8cce024ef20d6d1a94c74800a88 Author: Benoit Tellier <[email protected]> AuthorDate: Mon Nov 4 10:14:19 2019 +0700 JAMES-2939 Add tests for child mailboxes INBOX sanitizing --- .../apache/james/mailbox/MailboxManagerTest.java | 26 +++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/mailbox/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java b/mailbox/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java index eacf95e..7d2863d 100644 --- a/mailbox/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java +++ b/mailbox/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java @@ -51,7 +51,6 @@ import org.apache.james.mailbox.exception.AnnotationException; import org.apache.james.mailbox.exception.HasEmptyMailboxNameInHierarchyException; import org.apache.james.mailbox.exception.InboxAlreadyCreated; import org.apache.james.mailbox.exception.MailboxException; -import org.apache.james.mailbox.exception.MailboxExistsException; import org.apache.james.mailbox.exception.MailboxNotFoundException; import org.apache.james.mailbox.exception.TooLongMailboxNameException; import org.apache.james.mailbox.extension.PreDeletionHook; @@ -86,6 +85,7 @@ import org.mockito.ArgumentCaptor; import com.google.common.base.Strings; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; + import reactor.core.publisher.Mono; /** @@ -225,6 +225,30 @@ public abstract class MailboxManagerTest<T extends MailboxManager> { assertThatThrownBy(() -> mailboxManager.createMailbox(MailboxPath.forUser(USER_1, "iNbOx"), session)) .isInstanceOf(InboxAlreadyCreated.class); } + + @Test + void creatingMixedCaseINBOXShouldCreateItAsINBOXUponChildMailboxCreation() throws Exception { + session = mailboxManager.createSystemSession(USER_1); + mailboxManager.startProcessingRequest(session); + + Optional<MailboxId> mailboxId = mailboxManager.createMailbox(MailboxPath.forUser(USER_1, "iNbOx.submailbox"), session); + MessageManager retrievedMailbox = mailboxManager.getMailbox(MailboxPath.inbox(session), session); + + assertThat(mailboxManager.hasInbox(session)).isTrue(); + } + + @Test + void creatingMixedCaseINBOXChildShouldNormalizeChildPath() throws Exception { + session = mailboxManager.createSystemSession(USER_1); + mailboxManager.startProcessingRequest(session); + + MailboxPath childPath = MailboxPath.forUser(USER_1, "iNbOx.submailbox"); + Optional<MailboxId> mailboxId = mailboxManager.createMailbox(childPath, session); + MessageManager retrievedMailbox = mailboxManager.getMailbox(childPath, session); + + assertThat(mailboxManager.hasInbox(session)).isTrue(); + assertThat(mailboxId.get()).isEqualTo(retrievedMailbox.getId()); + } } @Nested --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
