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 2018/12/18 08:00:50 UTC

[07/13] james-project git commit: MAILBOX-365 Get rid of MockMailboxSession

MAILBOX-365 Get rid of MockMailboxSession

We can now use the MailboxSession POJO in tests


Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/71c5a800
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/71c5a800
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/71c5a800

Branch: refs/heads/master
Commit: 71c5a800171bb16a5974f3d426bc36572010c225
Parents: a598261
Author: Benoit Tellier <bt...@linagora.com>
Authored: Sat Dec 15 16:45:51 2018 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Tue Dec 18 14:48:16 2018 +0700

----------------------------------------------------------------------
 .../apache/james/mailbox/MailboxSession.java    |  20 ++++
 .../AbstractSubscriptionManagerTest.java        |   3 +-
 .../james/mailbox/mock/MockMailboxSession.java  | 105 -------------------
 .../mailbox/backup/MailboxMessageFixture.java   |   3 +-
 .../cassandra/mail/CassandraMapperProvider.java |   3 +-
 .../mail/CassandraMessageIdMapperTest.java      |   4 +-
 .../ElasticSearchIntegrationTest.java           |  14 +--
 ...icSearchListeningMessageSearchIndexTest.java |   3 +-
 .../mailbox/jpa/mail/JPAMapperProvider.java     |   4 +-
 .../LuceneMailboxMessageSearchIndexTest.java    |   3 +-
 .../search/LuceneMessageSearchIndexTest.java    |   4 +-
 .../inmemory/mail/InMemoryMapperProvider.java   |   6 +-
 .../QuotaThresholdListenersTestSystem.java      |   4 +-
 ...ticSearchQuotaSearchTestSystemExtension.java |   4 +-
 .../spamassassin/SpamAssassinListenerTest.java  |   4 +-
 .../store/AbstractCombinationManagerTest.java   |   3 +-
 .../AbstractMailboxManagerAttachmentTest.java   |   3 +-
 .../AbstractMessageIdManagerQuotaTest.java      |   3 +-
 .../AbstractMessageIdManagerSideEffectTest.java |   3 +-
 .../AbstractMessageIdManagerStorageTest.java    |   7 +-
 .../store/AbstractMessageManagerTest.java       |   5 +-
 .../store/MailboxEventDispatcherTest.java       |   3 +-
 .../StoreMailboxManagerAnnotationTest.java      |   5 +-
 .../mailbox/store/StoreMailboxManagerTest.java  |   7 +-
 .../mailbox/store/StoreRightManagerTest.java    |  10 +-
 .../store/SystemMailboxesProviderImplTest.java  |   3 +-
 .../DefaultDelegatingMailboxListenerTest.java   |   3 +-
 .../event/MailboxAnnotationListenerTest.java    |   3 +-
 .../store/event/MessageMoveEventTest.java       |  18 ++--
 .../mailbox/store/mail/MessageUtilsTest.java    |   3 +-
 .../host/ElasticSearchHostSystem.java           |   4 +-
 .../inmemory/host/InMemoryHostSystem.java       |   4 +-
 .../james/imap/api/ImapSessionUtilsTest.java    |   3 +-
 .../decode/parser/CreateCommandParserTest.java  |   3 +-
 .../processor/GetAnnotationProcessorTest.java   |   3 +-
 .../imap/processor/GetQuotaProcessorTest.java   |   9 +-
 .../processor/GetQuotaRootProcessorTest.java    |   9 +-
 .../processor/SetAnnotationProcessorTest.java   |   3 +-
 .../imap/processor/SetQuotaProcessorTest.java   |   3 +-
 .../base/MailboxEventAnalyserTest.java          |   5 +-
 .../mailets/delivery/MailboxAppender.java       |   2 +-
 .../mailets/delivery/LocalDeliveryTest.java     |  12 +--
 .../mailets/delivery/ToRecipientFolderTest.java |  12 +--
 .../DefaultMailboxesProvisioningFilterTest.java |   3 +-
 ...ltMailboxesProvisioningFilterThreadTest.java |   3 +-
 .../james/jmap/UserProvisioningFilterTest.java  |   9 +-
 .../jmap/UserProvisioningFilterThreadTest.java  |   3 +-
 .../event/PropagateLookupRightListenerTest.java |   3 +-
 .../jmap/methods/AttachmentCheckerTest.java     |   3 +-
 .../jmap/methods/GetMailboxesMethodTest.java    |   3 +-
 .../jmap/methods/GetMessagesMethodTest.java     |   3 +-
 .../SetMessagesCreationProcessorTest.java       |   5 +-
 .../apache/james/jmap/model/JmapMDNTest.java    |   4 +-
 .../ElasticSearchQuotaSearchExtension.java      |   4 +-
 .../routes/UserMailboxesRoutesTest.java         |   4 +-
 55 files changed, 130 insertions(+), 252 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxSession.java
----------------------------------------------------------------------
diff --git a/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxSession.java b/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxSession.java
index 0e1cc74..1c4d35f 100644
--- a/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxSession.java
+++ b/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxSession.java
@@ -26,10 +26,12 @@ import java.util.List;
 import java.util.Locale;
 import java.util.Map;
 import java.util.Objects;
+import java.util.Random;
 
 import org.apache.james.core.User;
 import org.apache.james.mailbox.model.MailboxConstants;
 
+import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.MoreObjects;
 
 /**
@@ -37,6 +39,23 @@ import com.google.common.base.MoreObjects;
  */
 public class MailboxSession {
 
+    @VisibleForTesting
+    public static MailboxSession create(String username) {
+        return create(username, SessionId.of(RANDOM.nextLong()));
+    }
+
+    @VisibleForTesting
+    public static MailboxSession create(String username, SessionId sessionId) {
+        ArrayList<Locale> locales = new ArrayList<>();
+
+        return new MailboxSession(
+            sessionId,
+            username,
+            locales,
+            MailboxConstants.DEFAULT_DELIMITER,
+            SessionType.User);
+    }
+
     public static class SessionId {
 
         public static SessionId of(long sessionId) {
@@ -80,6 +99,7 @@ public class MailboxSession {
      * Id which will be used for a System session
      */
     public static long SYSTEM_SESSION_ID = 0L;
+    private static final Random RANDOM = new Random();
 
     public enum SessionType {
         /**

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/api/src/test/java/org/apache/james/mailbox/AbstractSubscriptionManagerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/api/src/test/java/org/apache/james/mailbox/AbstractSubscriptionManagerTest.java b/mailbox/api/src/test/java/org/apache/james/mailbox/AbstractSubscriptionManagerTest.java
index e6da4fc..d42c34a 100644
--- a/mailbox/api/src/test/java/org/apache/james/mailbox/AbstractSubscriptionManagerTest.java
+++ b/mailbox/api/src/test/java/org/apache/james/mailbox/AbstractSubscriptionManagerTest.java
@@ -21,7 +21,6 @@ package org.apache.james.mailbox;
 import static org.assertj.core.api.Assertions.assertThat;
 
 import org.apache.james.mailbox.exception.SubscriptionException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.junit.Test;
 
 /**
@@ -41,7 +40,7 @@ public abstract class AbstractSubscriptionManagerTest {
 
     public void setup() {
         manager = createSubscriptionManager();
-        session = new MockMailboxSession(USER1);
+        session = MailboxSession.create(USER1);
         manager.startProcessingRequest(session);
     }
     

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/api/src/test/java/org/apache/james/mailbox/mock/MockMailboxSession.java
----------------------------------------------------------------------
diff --git a/mailbox/api/src/test/java/org/apache/james/mailbox/mock/MockMailboxSession.java b/mailbox/api/src/test/java/org/apache/james/mailbox/mock/MockMailboxSession.java
deleted file mode 100644
index 8bf84f0..0000000
--- a/mailbox/api/src/test/java/org/apache/james/mailbox/mock/MockMailboxSession.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/****************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one   *
- * or more contributor license agreements.  See the NOTICE file *
- * distributed with this work for additional information        *
- * regarding copyright ownership.  The ASF licenses this file   *
- * to you under the Apache License, Version 2.0 (the            *
- * "License"); you may not use this file except in compliance   *
- * with the License.  You may obtain a copy of the License at   *
- *                                                              *
- *   http://www.apache.org/licenses/LICENSE-2.0                 *
- *                                                              *
- * Unless required by applicable law or agreed to in writing,   *
- * software distributed under the License is distributed on an  *
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
- * KIND, either express or implied.  See the License for the    *
- * specific language governing permissions and limitations      *
- * under the License.                                           *
- ****************************************************************/
-package org.apache.james.mailbox.mock;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import java.util.Random;
-
-import org.apache.james.core.User;
-import org.apache.james.mailbox.MailboxSession;
-
-public class MockMailboxSession implements MailboxSession {
-    private final User user;
-    private final Map<Object, Object> attrs = new HashMap<>();
-    private static final Random RANDOM = new Random();
-    private final SessionId sessionId;
-    private final SessionType type;
-    private boolean open;
-    
-    public MockMailboxSession(String username) {
-        this(username, SessionId.of(RANDOM.nextLong()));
-    }
-
-    public MockMailboxSession(String username, SessionId sessionId) {
-        this.user = User.fromUsername(username);
-        this.sessionId = sessionId;
-        this.open = true;
-        type = SessionType.User;
-    }
-
-    @Override
-    public List<Locale> getLocalePreferences() {
-        return new ArrayList<>();
-    }
-
-    @Override
-    public void close() {
-        this.open = false;
-    }
-
-    @Override
-    public Map<Object, Object> getAttributes() {
-        return attrs;
-    }
-
-    @Override
-    public String getOtherUsersSpace() {
-        return null;
-    }
-
-    @Override
-    public String getPersonalSpace() {
-        return "";
-    }
-
-    @Override
-    public SessionId getSessionId() {
-        return sessionId;
-    }
-
-    @Override
-    public Collection<String> getSharedSpaces() {
-        return new ArrayList<>();
-    }
-
-    @Override
-    public User getUser() {
-        return user;
-    }
-
-    @Override
-    public boolean isOpen() {
-        return open;
-    }
-
-    @Override
-    public char getPathDelimiter() {
-        return '.';
-    }
-
-    @Override
-    public SessionType getType() {
-        return type;
-    }
-}

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/backup/src/test/java/org/apache/james/mailbox/backup/MailboxMessageFixture.java
----------------------------------------------------------------------
diff --git a/mailbox/backup/src/test/java/org/apache/james/mailbox/backup/MailboxMessageFixture.java b/mailbox/backup/src/test/java/org/apache/james/mailbox/backup/MailboxMessageFixture.java
index c00d8ee..0933c31 100644
--- a/mailbox/backup/src/test/java/org/apache/james/mailbox/backup/MailboxMessageFixture.java
+++ b/mailbox/backup/src/test/java/org/apache/james/mailbox/backup/MailboxMessageFixture.java
@@ -29,7 +29,6 @@ import javax.mail.util.SharedByteArrayInputStream;
 
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageId;
@@ -64,7 +63,7 @@ public interface MailboxMessageFixture {
     MailboxId MAILBOX_ID_1 = TestId.of(1L);
     Flags flags1 = new Flags("myFlags");
 
-    MailboxSession MAILBOX_SESSION = new MockMailboxSession("user");
+    MailboxSession MAILBOX_SESSION = MailboxSession.create("user");
     
     Mailbox MAILBOX_1 = new SimpleMailbox(MailboxPath.forUser("user", "mailbox1"), 42, TestId.of(1L));
     Mailbox MAILBOX_1_SUB_1 = new SimpleMailbox(MailboxPath.forUser("user", "mailbox1" + MAILBOX_SESSION.getPathDelimiter() + "sub1"), 420, TestId.of(11L));

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMapperProvider.java
----------------------------------------------------------------------
diff --git a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMapperProvider.java b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMapperProvider.java
index e894802..65f54b0 100644
--- a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMapperProvider.java
+++ b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMapperProvider.java
@@ -29,7 +29,6 @@ import org.apache.james.mailbox.cassandra.ids.CassandraId;
 import org.apache.james.mailbox.cassandra.ids.CassandraMessageId;
 import org.apache.james.mailbox.cassandra.ids.CassandraMessageId.Factory;
 import org.apache.james.mailbox.exception.MailboxException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MessageId;
 import org.apache.james.mailbox.store.mail.AnnotationMapper;
 import org.apache.james.mailbox.store.mail.AttachmentMapper;
@@ -49,7 +48,7 @@ public class CassandraMapperProvider implements MapperProvider {
     private final CassandraCluster cassandra;
     private final MessageUidProvider messageUidProvider;
     private final CassandraModSeqProvider cassandraModSeqProvider;
-    private final MockMailboxSession mailboxSession = new MockMailboxSession("benwa");
+    private final MailboxSession mailboxSession = MailboxSession.create("benwa");
     private CassandraMailboxSessionMapperFactory mapperFactory;
 
     public CassandraMapperProvider(CassandraCluster cassandra) {

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapperTest.java
----------------------------------------------------------------------
diff --git a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapperTest.java b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapperTest.java
index 52488f9..24cbda4 100644
--- a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapperTest.java
+++ b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapperTest.java
@@ -26,11 +26,11 @@ import java.util.List;
 import org.apache.james.backends.cassandra.CassandraCluster;
 import org.apache.james.backends.cassandra.DockerCassandraRule;
 import org.apache.james.backends.cassandra.init.configuration.CassandraConfiguration;
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.cassandra.CassandraMailboxSessionMapperFactory;
 import org.apache.james.mailbox.cassandra.TestCassandraMailboxSessionMapperFactory;
 import org.apache.james.mailbox.cassandra.ids.CassandraMessageId;
 import org.apache.james.mailbox.exception.MailboxException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.store.mail.MessageMapper;
 import org.apache.james.mailbox.store.mail.model.MailboxMessage;
 import org.apache.james.mailbox.store.mail.model.MessageIdMapperTest;
@@ -45,7 +45,7 @@ import com.google.common.collect.ImmutableList;
 
 public class CassandraMessageIdMapperTest extends MessageIdMapperTest {
 
-    public static final MockMailboxSession MAILBOX_SESSION = new MockMailboxSession("benwa");
+    private static final MailboxSession MAILBOX_SESSION = MailboxSession.create("benwa");
     @ClassRule public static DockerCassandraRule cassandraServer = new DockerCassandraRule();
 
     private static CassandraCluster cassandra;

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/ElasticSearchIntegrationTest.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/ElasticSearchIntegrationTest.java b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/ElasticSearchIntegrationTest.java
index db68d9d..78d6a8d 100644
--- a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/ElasticSearchIntegrationTest.java
+++ b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/ElasticSearchIntegrationTest.java
@@ -30,6 +30,7 @@ import org.apache.james.backends.es.ElasticSearchConfiguration;
 import org.apache.james.backends.es.ElasticSearchIndexer;
 import org.apache.james.backends.es.EmbeddedElasticSearch;
 import org.apache.james.backends.es.utils.TestingClientProvider;
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageManager;
 import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
 import org.apache.james.mailbox.elasticsearch.events.ElasticSearchListeningMessageSearchIndex;
@@ -39,7 +40,6 @@ import org.apache.james.mailbox.elasticsearch.query.QueryConverter;
 import org.apache.james.mailbox.elasticsearch.search.ElasticSearchSearcher;
 import org.apache.james.mailbox.inmemory.InMemoryId;
 import org.apache.james.mailbox.inmemory.manager.InMemoryIntegrationResources;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.ComposedMessageId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.SearchQuery;
@@ -124,14 +124,14 @@ public class ElasticSearchIntegrationTest extends AbstractMessageSearchIndexTest
             storeMailboxManager.getQuotaManager(),
             storeMailboxManager.getQuotaRootResolver());
         storeMailboxManager.setMessageSearchIndex(elasticSearchListeningMessageSearchIndex);
-        storeMailboxManager.addGlobalListener(elasticSearchListeningMessageSearchIndex, new MockMailboxSession("admin"));
+        storeMailboxManager.addGlobalListener(elasticSearchListeningMessageSearchIndex, MailboxSession.create("admin"));
         this.messageSearchIndex = elasticSearchListeningMessageSearchIndex;
     }
 
     @Test
     public void termsBetweenElasticSearchAndLuceneLimitDueTuNonAsciiCharsShouldBeTruncated() throws Exception {
         MailboxPath mailboxPath = MailboxPath.forUser(USERNAME, INBOX);
-        MockMailboxSession session = new MockMailboxSession(USERNAME);
+        MailboxSession session = MailboxSession.create(USERNAME);
         MessageManager messageManager = storeMailboxManager.getMailbox(mailboxPath, session);
 
         String recipient = "benwa@linagora.com";
@@ -150,7 +150,7 @@ public class ElasticSearchIntegrationTest extends AbstractMessageSearchIndexTest
     @Test
     public void tooLongTermsShouldNotMakeIndexingFail() throws Exception {
         MailboxPath mailboxPath = MailboxPath.forUser(USERNAME, INBOX);
-        MockMailboxSession session = new MockMailboxSession(USERNAME);
+        MailboxSession session = MailboxSession.create(USERNAME);
         MessageManager messageManager = storeMailboxManager.getMailbox(mailboxPath, session);
 
         String recipient = "benwa@linagora.com";
@@ -169,7 +169,7 @@ public class ElasticSearchIntegrationTest extends AbstractMessageSearchIndexTest
     @Test
     public void fieldsExceedingLuceneLimitShouldNotBeIgnored() throws Exception {
         MailboxPath mailboxPath = MailboxPath.forUser(USERNAME, INBOX);
-        MockMailboxSession session = new MockMailboxSession(USERNAME);
+        MailboxSession session = MailboxSession.create(USERNAME);
         MessageManager messageManager = storeMailboxManager.getMailbox(mailboxPath, session);
 
         String recipient = "benwa@linagora.com";
@@ -188,7 +188,7 @@ public class ElasticSearchIntegrationTest extends AbstractMessageSearchIndexTest
     @Test
     public void fieldsWithTooLongTermShouldStillBeIndexed() throws Exception {
         MailboxPath mailboxPath = MailboxPath.forUser(USERNAME, INBOX);
-        MockMailboxSession session = new MockMailboxSession(USERNAME);
+        MailboxSession session = MailboxSession.create(USERNAME);
         MessageManager messageManager = storeMailboxManager.getMailbox(mailboxPath, session);
 
         String recipient = "benwa@linagora.com";
@@ -207,7 +207,7 @@ public class ElasticSearchIntegrationTest extends AbstractMessageSearchIndexTest
     @Test
     public void reasonableLongTermShouldNotBeIgnored() throws Exception {
         MailboxPath mailboxPath = MailboxPath.forUser(USERNAME, INBOX);
-        MockMailboxSession session = new MockMailboxSession(USERNAME);
+        MailboxSession session = MailboxSession.create(USERNAME);
         MessageManager messageManager = storeMailboxManager.getMailbox(mailboxPath, session);
 
         String recipient = "benwa@linagora.com";

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
index f04852d..7c66ddb 100644
--- a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
+++ b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
@@ -39,7 +39,6 @@ import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.elasticsearch.json.MessageToElasticSearchJson;
 import org.apache.james.mailbox.elasticsearch.search.ElasticSearchSearcher;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.TestId;
 import org.apache.james.mailbox.model.UpdatedFlags;
 import org.apache.james.mailbox.store.MailboxSessionMapperFactory;
@@ -83,7 +82,7 @@ public class ElasticSearchListeningMessageSearchIndexTest {
         
         testee = new ElasticSearchListeningMessageSearchIndex(mapperFactory, elasticSearchIndexer, elasticSearchSearcher,
             messageToElasticSearchJson, mockMailboxManager);
-        session = new MockMailboxSession(USERNAME);
+        session = MailboxSession.create(USERNAME);
         users = ImmutableList.of(User.fromUsername(USERNAME));
     }
     

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/jpa/src/test/java/org/apache/james/mailbox/jpa/mail/JPAMapperProvider.java
----------------------------------------------------------------------
diff --git a/mailbox/jpa/src/test/java/org/apache/james/mailbox/jpa/mail/JPAMapperProvider.java b/mailbox/jpa/src/test/java/org/apache/james/mailbox/jpa/mail/JPAMapperProvider.java
index 366b23c..e73e2c0 100644
--- a/mailbox/jpa/src/test/java/org/apache/james/mailbox/jpa/mail/JPAMapperProvider.java
+++ b/mailbox/jpa/src/test/java/org/apache/james/mailbox/jpa/mail/JPAMapperProvider.java
@@ -26,10 +26,10 @@ import javax.persistence.EntityManagerFactory;
 
 import org.apache.commons.lang3.NotImplementedException;
 import org.apache.james.backends.jpa.JpaTestCluster;
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.jpa.JPAId;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MessageId;
 import org.apache.james.mailbox.store.JVMMailboxPathLocker;
@@ -62,7 +62,7 @@ public class JPAMapperProvider implements MapperProvider {
         EntityManagerFactory entityManagerFactory = jpaTestCluster.getEntityManagerFactory();
         JVMMailboxPathLocker locker = new JVMMailboxPathLocker();
 
-        JPAMessageMapper messageMapper = new JPAMessageMapper(new MockMailboxSession("benwa"), 
+        JPAMessageMapper messageMapper = new JPAMessageMapper(MailboxSession.create("benwa"),
             new JPAUidProvider(locker, entityManagerFactory), 
             new JPAModSeqProvider(locker, entityManagerFactory), 
             entityManagerFactory);

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMailboxMessageSearchIndexTest.java
----------------------------------------------------------------------
diff --git a/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMailboxMessageSearchIndexTest.java b/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMailboxMessageSearchIndexTest.java
index 5ea228c..4c369f4 100644
--- a/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMailboxMessageSearchIndexTest.java
+++ b/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMailboxMessageSearchIndexTest.java
@@ -34,7 +34,6 @@ import javax.mail.Flags.Flag;
 
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxACL;
 import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
@@ -95,7 +94,7 @@ public class LuceneMailboxMessageSearchIndexTest {
     
     @Before
     public void setUp() throws Exception {
-        session = new MockMailboxSession("username");
+        session = MailboxSession.create("username");
         TestMessageId.Factory factory = new TestMessageId.Factory();
         id1 = factory.generate();
         id2 = factory.generate();

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java
----------------------------------------------------------------------
diff --git a/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java b/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java
index b9eeaa6..de6d66b 100644
--- a/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java
+++ b/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java
@@ -19,11 +19,11 @@
 
 package org.apache.james.mailbox.lucene.search;
 
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.inmemory.InMemoryId;
 import org.apache.james.mailbox.inmemory.manager.InMemoryIntegrationResources;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.store.StoreMessageIdManager;
 import org.apache.james.mailbox.store.search.AbstractMessageSearchIndexTest;
 import org.apache.lucene.store.RAMDirectory;
@@ -52,7 +52,7 @@ public class LuceneMessageSearchIndexTest extends AbstractMessageSearchIndexTest
             storeMailboxManager.getMessageIdFactory(),
             storeMailboxManager);
         storeMailboxManager.setMessageSearchIndex(luceneMessageSearchIndex);
-        storeMailboxManager.addGlobalListener(luceneMessageSearchIndex, new MockMailboxSession("admin"));
+        storeMailboxManager.addGlobalListener(luceneMessageSearchIndex, MailboxSession.create("admin"));
         this.messageSearchIndex = luceneMessageSearchIndex;
     }
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/memory/src/test/java/org/apache/james/mailbox/inmemory/mail/InMemoryMapperProvider.java
----------------------------------------------------------------------
diff --git a/mailbox/memory/src/test/java/org/apache/james/mailbox/inmemory/mail/InMemoryMapperProvider.java b/mailbox/memory/src/test/java/org/apache/james/mailbox/inmemory/mail/InMemoryMapperProvider.java
index bbf7406..26eeb41 100644
--- a/mailbox/memory/src/test/java/org/apache/james/mailbox/inmemory/mail/InMemoryMapperProvider.java
+++ b/mailbox/memory/src/test/java/org/apache/james/mailbox/inmemory/mail/InMemoryMapperProvider.java
@@ -22,12 +22,12 @@ package org.apache.james.mailbox.inmemory.mail;
 import java.util.List;
 import java.util.Random;
 
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.inmemory.InMemoryId;
 import org.apache.james.mailbox.inmemory.InMemoryMailboxSessionMapperFactory;
 import org.apache.james.mailbox.inmemory.InMemoryMessageId;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MessageId;
 import org.apache.james.mailbox.store.mail.AnnotationMapper;
 import org.apache.james.mailbox.store.mail.AttachmentMapper;
@@ -42,7 +42,7 @@ import com.google.common.collect.ImmutableList;
 
 public class InMemoryMapperProvider implements MapperProvider {
 
-    private static final MockMailboxSession MAILBOX_SESSION = new MockMailboxSession("user");
+    private static final MailboxSession MAILBOX_SESSION = MailboxSession.create("user");
 
     private final Random random;
     private final MessageId.Factory messageIdFactory;
@@ -64,7 +64,7 @@ public class InMemoryMapperProvider implements MapperProvider {
 
     @Override
     public MessageMapper createMessageMapper() throws MailboxException {
-        return inMemoryMailboxSessionMapperFactory.createMessageMapper(new MockMailboxSession("user"));
+        return inMemoryMailboxSessionMapperFactory.createMessageMapper(MailboxSession.create("user"));
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/listeners/QuotaThresholdListenersTestSystem.java
----------------------------------------------------------------------
diff --git a/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/listeners/QuotaThresholdListenersTestSystem.java b/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/listeners/QuotaThresholdListenersTestSystem.java
index 32f19e3..62a4bdb 100644
--- a/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/listeners/QuotaThresholdListenersTestSystem.java
+++ b/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/listeners/QuotaThresholdListenersTestSystem.java
@@ -22,8 +22,8 @@ package org.apache.james.mailbox.quota.mailing.listeners;
 import org.apache.james.eventsourcing.eventstore.EventStore;
 import org.apache.james.filesystem.api.FileSystem;
 import org.apache.james.mailbox.Event;
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.exception.MailboxException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfiguration;
 import org.apache.james.mailbox.store.event.DefaultDelegatingMailboxListener;
 import org.apache.james.server.core.JamesServerResourceLoader;
@@ -43,7 +43,7 @@ public class QuotaThresholdListenersTestSystem {
         QuotaThresholdCrossingListener thresholdCrossingListener =
             new QuotaThresholdCrossingListener(mailetContext, MemoryUsersRepository.withVirtualHosting(), fileSystem, eventStore, configuration);
 
-        MockMailboxSession mailboxSession = new MockMailboxSession("system");
+        MailboxSession mailboxSession = MailboxSession.create("system");
         delegatingListener.addGlobalListener(thresholdCrossingListener, mailboxSession);
     }
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/plugin/quota-search-elasticsearch/src/test/java/org/apache/james/quota/search/elasticsearch/ElasticSearchQuotaSearchTestSystemExtension.java
----------------------------------------------------------------------
diff --git a/mailbox/plugin/quota-search-elasticsearch/src/test/java/org/apache/james/quota/search/elasticsearch/ElasticSearchQuotaSearchTestSystemExtension.java b/mailbox/plugin/quota-search-elasticsearch/src/test/java/org/apache/james/quota/search/elasticsearch/ElasticSearchQuotaSearchTestSystemExtension.java
index 872cf33..2477900 100644
--- a/mailbox/plugin/quota-search-elasticsearch/src/test/java/org/apache/james/quota/search/elasticsearch/ElasticSearchQuotaSearchTestSystemExtension.java
+++ b/mailbox/plugin/quota-search-elasticsearch/src/test/java/org/apache/james/quota/search/elasticsearch/ElasticSearchQuotaSearchTestSystemExtension.java
@@ -30,9 +30,9 @@ import org.apache.james.backends.es.EmbeddedElasticSearch;
 import org.apache.james.backends.es.utils.TestingClientProvider;
 import org.apache.james.dnsservice.api.DNSService;
 import org.apache.james.domainlist.memory.MemoryDomainList;
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
 import org.apache.james.mailbox.inmemory.manager.InMemoryIntegrationResources;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.quota.search.QuotaSearchTestSystem;
 import org.apache.james.quota.search.elasticsearch.events.ElasticSearchQuotaMailboxListener;
 import org.apache.james.quota.search.elasticsearch.json.QuotaRatioToElasticSearchJson;
@@ -79,7 +79,7 @@ public class ElasticSearchQuotaSearchTestSystemExtension implements ParameterRes
                 new QuotaRatioToElasticSearchJson());
 
             resources.getMailboxManager()
-                .addGlobalListener(listener, new MockMailboxSession("ANY"));
+                .addGlobalListener(listener, MailboxSession.create("ANY"));
 
             return new QuotaSearchTestSystem(
                 resources.getMaxQuotaManager(),

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/plugin/spamassassin/src/test/java/org/apache/james/mailbox/spamassassin/SpamAssassinListenerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/plugin/spamassassin/src/test/java/org/apache/james/mailbox/spamassassin/SpamAssassinListenerTest.java b/mailbox/plugin/spamassassin/src/test/java/org/apache/james/mailbox/spamassassin/SpamAssassinListenerTest.java
index 04baa1d..3bbfd62 100644
--- a/mailbox/plugin/spamassassin/src/test/java/org/apache/james/mailbox/spamassassin/SpamAssassinListenerTest.java
+++ b/mailbox/plugin/spamassassin/src/test/java/org/apache/james/mailbox/spamassassin/SpamAssassinListenerTest.java
@@ -34,11 +34,11 @@ import javax.mail.util.SharedByteArrayInputStream;
 
 import org.apache.james.mailbox.DefaultMailboxes;
 import org.apache.james.mailbox.MailboxListener;
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.inmemory.manager.InMemoryIntegrationResources;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageMetaData;
@@ -64,7 +64,7 @@ import com.google.common.collect.ImmutableSortedMap;
 public class SpamAssassinListenerTest {
 
     public static final String USER = "user";
-    private static final MockMailboxSession MAILBOX_SESSION = new MockMailboxSession(USER);
+    private static final MailboxSession MAILBOX_SESSION = MailboxSession.create(USER);
     private static final int UID_VALIDITY = 43;
     private static final MessageUid UID = MessageUid.of(45);
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractCombinationManagerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractCombinationManagerTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractCombinationManagerTest.java
index ac11def..1e20f59 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractCombinationManagerTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractCombinationManagerTest.java
@@ -38,7 +38,6 @@ import org.apache.james.mailbox.MessageManager.FlagsUpdateMode;
 import org.apache.james.mailbox.MessageManager.MetaData.FetchGroup;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.fixture.MailboxFixture;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.ComposedMessageId;
 import org.apache.james.mailbox.model.FetchGroupImpl;
 import org.apache.james.mailbox.model.MessageId;
@@ -74,7 +73,7 @@ public abstract class AbstractCombinationManagerTest {
     public abstract CombinationManagerTestSystem createTestingData() throws Exception;
 
     public void setUp() throws Exception {
-        session = new MockMailboxSession(MailboxFixture.ALICE);
+        session = MailboxSession.create(MailboxFixture.ALICE);
         testingData = createTestingData();
 
         mailbox1 = testingData.createMailbox(MailboxFixture.INBOX_ALICE, session);

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMailboxManagerAttachmentTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMailboxManagerAttachmentTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMailboxManagerAttachmentTest.java
index 562066a..b230fc1 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMailboxManagerAttachmentTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMailboxManagerAttachmentTest.java
@@ -30,7 +30,6 @@ import java.util.Optional;
 import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageManager;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageAttachment;
 import org.apache.james.mailbox.model.MessageRange;
@@ -64,7 +63,7 @@ public abstract class AbstractMailboxManagerAttachmentTest {
     protected abstract AttachmentMapperFactory getAttachmentMapperFactory();
     
     public void setUp() throws Exception {
-        mailboxSession = new MockMailboxSession(USERNAME);
+        mailboxSession = MailboxSession.create(USERNAME);
         messageMapper = getMailboxSessionMapperFactory().getMessageMapper(mailboxSession);
         mailboxMapper = getMailboxSessionMapperFactory().getMailboxMapper(mailboxSession);
         inboxPath = MailboxPath.forUser(USERNAME, "INBOX");

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerQuotaTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerQuotaTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerQuotaTest.java
index 9571e20..78d48c8 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerQuotaTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerQuotaTest.java
@@ -30,7 +30,6 @@ import org.apache.james.mailbox.MessageIdManager;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.exception.OverQuotaException;
 import org.apache.james.mailbox.fixture.MailboxFixture;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MessageId;
 import org.apache.james.mailbox.quota.CurrentQuotaManager;
 import org.apache.james.mailbox.quota.MaxQuotaManager;
@@ -73,7 +72,7 @@ public abstract class AbstractMessageIdManagerQuotaTest {
         CurrentQuotaManager currentQuotaManager = createCurrentQuotaManager();
         QuotaManager quotaManager = createQuotaManager(maxQuotaManager, currentQuotaManager);
 
-        session = new MockMailboxSession(ALICE);
+        session = MailboxSession.create(ALICE);
         testingData = createTestSystem(quotaManager, currentQuotaManager);
         messageIdManager = testingData.getMessageIdManager();
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerSideEffectTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerSideEffectTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerSideEffectTest.java
index 75df4bc..ab3527f 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerSideEffectTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerSideEffectTest.java
@@ -44,7 +44,6 @@ import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.exception.OverQuotaException;
 import org.apache.james.mailbox.fixture.MailboxFixture;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.FetchGroupImpl;
 import org.apache.james.mailbox.model.MessageId;
 import org.apache.james.mailbox.model.MessageResult;
@@ -89,7 +88,7 @@ public abstract class AbstractMessageIdManagerSideEffectTest {
         dispatcher = mock(MailboxEventDispatcher.class);
         quotaManager = mock(QuotaManager.class);
 
-        session = new MockMailboxSession(ALICE);
+        session = MailboxSession.create(ALICE);
         testingData = createTestSystem(quotaManager, dispatcher);
         messageIdManager = testingData.getMessageIdManager();
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerStorageTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerStorageTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerStorageTest.java
index e60c0ff..2c3e7de 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerStorageTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerStorageTest.java
@@ -36,7 +36,6 @@ import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.exception.MailboxNotFoundException;
 import org.apache.james.mailbox.fixture.MailboxFixture;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.DeleteResult;
 import org.apache.james.mailbox.model.FetchGroupImpl;
 import org.apache.james.mailbox.model.MailboxACL;
@@ -75,9 +74,9 @@ public abstract class AbstractMessageIdManagerStorageTest {
     protected abstract MessageIdManagerTestSystem createTestingData() throws Exception;
 
     public void setUp() throws Exception {
-        aliceSession = new MockMailboxSession(MailboxFixture.ALICE);
-        bobSession = new MockMailboxSession(MailboxFixture.BOB);
-        systemSession = new MockMailboxSession("systemuser");
+        aliceSession = MailboxSession.create(MailboxFixture.ALICE);
+        bobSession = MailboxSession.create(MailboxFixture.BOB);
+        systemSession = MailboxSession.create("systemuser");
         testingData = createTestingData();
         messageIdManager = testingData.getMessageIdManager();
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageManagerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageManagerTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageManagerTest.java
index ee69a00..0c677ec 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageManagerTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageManagerTest.java
@@ -29,7 +29,6 @@ import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageManager;
 import org.apache.james.mailbox.fixture.MailboxFixture;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxACL;
 import org.junit.Test;
 
@@ -45,8 +44,8 @@ public abstract class AbstractMessageManagerTest {
     protected abstract MessageManagerTestSystem createTestSystem() throws Exception;
 
     public void setUp() throws Exception {
-        aliceSession = new MockMailboxSession(ALICE);
-        bobSession = new MockMailboxSession(BOB);
+        aliceSession = MailboxSession.create(ALICE);
+        bobSession = MailboxSession.create(BOB);
         testSystem = createTestSystem();
         mailboxManager = testSystem.getMailboxManager();
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/MailboxEventDispatcherTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/MailboxEventDispatcherTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/MailboxEventDispatcherTest.java
index 691ec79..f5354f9 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/MailboxEventDispatcherTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/MailboxEventDispatcherTest.java
@@ -31,7 +31,6 @@ import org.apache.james.mailbox.FlagsBuilder;
 import org.apache.james.mailbox.MailboxListener;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageResult;
 import org.apache.james.mailbox.model.TestId;
@@ -64,7 +63,7 @@ public class MailboxEventDispatcherTest {
     private MessageResult result;
     private Mailbox mailbox;
 
-    private MailboxSession session = new MockMailboxSession("test", SESSION_ID);
+    private MailboxSession session = MailboxSession.create("test", SESSION_ID);
 
     @Before
     public void setUp() throws Exception {

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerAnnotationTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerAnnotationTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerAnnotationTest.java
index 0d48de8..3732848 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerAnnotationTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerAnnotationTest.java
@@ -34,7 +34,6 @@ import java.util.Set;
 
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.exception.MailboxException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxACL;
 import org.apache.james.mailbox.model.MailboxAnnotation;
 import org.apache.james.mailbox.model.MailboxAnnotationKey;
@@ -70,7 +69,7 @@ public class StoreMailboxManagerAnnotationTest {
     @Mock private MailboxPath mailboxPath;
     @Mock private Mailbox mailbox;
     @Mock private MailboxId mailboxId;
-    private MockMailboxSession session;
+    private MailboxSession session;
 
     private StoreMailboxAnnotationManager annotationManager;
 
@@ -80,7 +79,7 @@ public class StoreMailboxManagerAnnotationTest {
     public void setUp() throws Exception {
         MockitoAnnotations.initMocks(this);
 
-        session = new MockMailboxSession("userName");
+        session = MailboxSession.create("userName");
 
         when(mailboxSessionMapperFactory.getMailboxMapper(eq(session))).thenReturn(mailboxMapper);
         when(mailboxSessionMapperFactory.getAnnotationMapper(eq(session))).thenReturn(annotationMapper);

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerTest.java
index 102bb2a..bd4fddf 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxManagerTest.java
@@ -33,7 +33,6 @@ import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.exception.MailboxNotFoundException;
 import org.apache.james.mailbox.exception.NotAdminException;
 import org.apache.james.mailbox.exception.UserDoesNotExistException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxACL;
 import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
@@ -67,7 +66,7 @@ public class StoreMailboxManagerTest {
     @Before
     public void setUp() throws MailboxException {
         MailboxSessionMapperFactory mockedMapperFactory = mock(MailboxSessionMapperFactory.class);
-        mockedMailboxSession = new MockMailboxSession(CURRENT_USER);
+        mockedMailboxSession = MailboxSession.create(CURRENT_USER);
         mockedMailboxMapper = mock(MailboxMapper.class);
         when(mockedMapperFactory.getMailboxMapper(mockedMailboxSession))
             .thenReturn(mockedMailboxMapper);
@@ -189,7 +188,7 @@ public class StoreMailboxManagerTest {
     @Test
     public void getPathLikeShouldReturnUserPathLikeWhenNoPrefixDefined() throws Exception {
         //Given
-        MailboxSession session = new MockMailboxSession("user");
+        MailboxSession session = MailboxSession.create("user");
         MailboxQuery.Builder testee = MailboxQuery.builder()
             .expression(new PrefixedRegex(EMPTY_PREFIX, "abc", session.getPathDelimiter()));
         //When
@@ -202,7 +201,7 @@ public class StoreMailboxManagerTest {
     @Test
     public void getPathLikeShouldReturnUserPathLikeWhenPrefixDefined() throws Exception {
         //Given
-        MailboxSession session = new MockMailboxSession("user");
+        MailboxSession session = MailboxSession.create("user");
         MailboxQuery.Builder testee = MailboxQuery.builder()
             .expression(new PrefixedRegex("prefix.", "abc", session.getPathDelimiter()));
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreRightManagerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreRightManagerTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreRightManagerTest.java
index 91a481a..52489d6 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreRightManagerTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreRightManagerTest.java
@@ -30,6 +30,7 @@ import static org.mockito.Mockito.when;
 
 import javax.mail.Flags;
 
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.acl.GroupMembershipResolver;
 import org.apache.james.mailbox.acl.MailboxACLResolver;
 import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
@@ -39,7 +40,6 @@ import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.exception.MailboxNotFoundException;
 import org.apache.james.mailbox.exception.UnsupportedRightException;
 import org.apache.james.mailbox.fixture.MailboxFixture;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxACL;
 import org.apache.james.mailbox.model.MailboxACL.ACLCommand;
 import org.apache.james.mailbox.model.MailboxACL.Right;
@@ -56,14 +56,14 @@ public class StoreRightManagerTest {
 
     private static final long UID_VALIDITY = 3421L;
     private StoreRightManager storeRightManager;
-    private MockMailboxSession aliceSession;
+    private MailboxSession aliceSession;
     private MailboxACLResolver mailboxAclResolver;
     private GroupMembershipResolver groupMembershipResolver;
     private MailboxMapper mockedMailboxMapper;
 
     @Before
     public void setup() throws MailboxException {
-        aliceSession = new MockMailboxSession(MailboxFixture.ALICE);
+        aliceSession = MailboxSession.create(MailboxFixture.ALICE);
         MailboxSessionMapperFactory mockedMapperFactory = mock(MailboxSessionMapperFactory.class);
         mockedMailboxMapper = mock(MailboxMapper.class);
         mailboxAclResolver = new UnionMailboxACLResolver();
@@ -218,7 +218,7 @@ public class StoreRightManagerTest {
             .apply(MailboxACL.command().rights(Right.Read, Right.Write).forUser(BOB).asAddition())
             .apply(MailboxACL.command().rights(Right.Read, Right.Write, Right.Administer).forUser(CEDRIC).asAddition());
         MailboxACL actual = StoreRightManager.filteredForSession(
-            new SimpleMailbox(INBOX_ALICE, UID_VALIDITY), acl, new MockMailboxSession(CEDRIC));
+            new SimpleMailbox(INBOX_ALICE, UID_VALIDITY), acl, MailboxSession.create(CEDRIC));
         assertThat(actual).isEqualTo(acl);
     }
 
@@ -228,7 +228,7 @@ public class StoreRightManagerTest {
             .apply(MailboxACL.command().rights(Right.Read, Right.Write).forUser(BOB).asAddition())
             .apply(MailboxACL.command().rights(Right.Read, Right.Write, Right.Administer).forUser(CEDRIC).asAddition());
         MailboxACL actual = StoreRightManager.filteredForSession(
-            new SimpleMailbox(INBOX_ALICE, UID_VALIDITY), acl, new MockMailboxSession(BOB));
+            new SimpleMailbox(INBOX_ALICE, UID_VALIDITY), acl, MailboxSession.create(BOB));
         assertThat(actual.getEntries()).containsKey(MailboxACL.EntryKey.createUserEntryKey(BOB));
     }
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/SystemMailboxesProviderImplTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/SystemMailboxesProviderImplTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/SystemMailboxesProviderImplTest.java
index ed1c1ee..b8989ba 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/SystemMailboxesProviderImplTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/SystemMailboxesProviderImplTest.java
@@ -30,7 +30,6 @@ import org.apache.james.mailbox.MessageManager;
 import org.apache.james.mailbox.Role;
 import org.apache.james.mailbox.exception.MailboxNotFoundException;
 import org.apache.james.mailbox.fixture.MailboxFixture;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
@@ -38,7 +37,7 @@ import org.junit.rules.ExpectedException;
 
 public class SystemMailboxesProviderImplTest {
 
-    private MailboxSession mailboxSession = new MockMailboxSession(MailboxFixture.ALICE);
+    private MailboxSession mailboxSession = MailboxSession.create(MailboxFixture.ALICE);
     private SystemMailboxesProviderImpl systemMailboxProvider;
 
     private MailboxManager mailboxManager;

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
index eca8099..0a78e26 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
@@ -29,7 +29,6 @@ import org.apache.james.core.quota.QuotaSize;
 import org.apache.james.mailbox.MailboxListener;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.exception.MailboxException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.QuotaRoot;
@@ -167,7 +166,7 @@ public class DefaultDelegatingMailboxListenerTest {
 
     @Test
     public void listenersErrorsShouldNotBePropageted() throws Exception {
-        MailboxSession session = new MockMailboxSession("benwa");
+        MailboxSession session = MailboxSession.create("benwa");
         MailboxListener.MailboxEvent event = new MailboxListener.MailboxEvent(session.getSessionId(),
             session.getUser(), MAILBOX_PATH, MAILBOX_ID) {};
         MailboxListener mockedListener = mock(MailboxListener.class);

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MailboxAnnotationListenerTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MailboxAnnotationListenerTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MailboxAnnotationListenerTest.java
index 933ed28..84dac7f 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MailboxAnnotationListenerTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MailboxAnnotationListenerTest.java
@@ -33,7 +33,6 @@ import org.apache.james.core.quota.QuotaSize;
 import org.apache.james.mailbox.MailboxListener;
 import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.mailbox.MailboxSession;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxAnnotation;
 import org.apache.james.mailbox.model.MailboxAnnotationKey;
 import org.apache.james.mailbox.model.MailboxId;
@@ -78,7 +77,7 @@ public class MailboxAnnotationListenerTest {
     @Before
     public void setUp() throws Exception {
         MockitoAnnotations.initMocks(this);
-        mailboxSession = new MockMailboxSession("test");
+        mailboxSession = MailboxSession.create("test");
         listener = new MailboxAnnotationListener(mailboxSessionMapperFactory, mailboxManager);
         eventFactory = new EventFactory();
         mailbox = new SimpleMailbox(MailboxPath.forUser("user", "name"), UID_VALIDITY, mailboxId);

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MessageMoveEventTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MessageMoveEventTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MessageMoveEventTest.java
index 70ac645..9c0c28a 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MessageMoveEventTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MessageMoveEventTest.java
@@ -25,8 +25,8 @@ import static org.mockito.Mockito.mock;
 import java.util.Map;
 
 import org.apache.james.core.User;
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MessageMoves;
 import org.apache.james.mailbox.model.TestId;
 import org.apache.james.mailbox.store.mail.model.MailboxMessage;
@@ -51,7 +51,7 @@ public class MessageMoveEventTest {
     @Test
     public void builderShouldThrowWhenMessageMovesIsNull() {
         assertThatThrownBy(() -> MessageMoveEvent.builder()
-                .session(new MockMailboxSession("user@james.org"))
+                .session(MailboxSession.create("user@james.org"))
                 .build())
             .isInstanceOf(NullPointerException.class);
     }
@@ -59,7 +59,7 @@ public class MessageMoveEventTest {
     @Test
     public void builderShouldReturnNoopWhenMessagesIsEmpty() {
         assertThat(MessageMoveEvent.builder()
-                .session(new MockMailboxSession("user@james.org"))
+                .session(MailboxSession.create("user@james.org"))
                 .messageMoves(MessageMoves.builder()
                     .previousMailboxIds(TestId.of(1))
                     .targetMailboxIds(TestId.of(2))
@@ -70,7 +70,7 @@ public class MessageMoveEventTest {
 
     @Test
     public void builderShouldNotBeNoopWhenFieldsAreGiven() {
-        MockMailboxSession session = new MockMailboxSession("user@james.org");
+        MailboxSession session = MailboxSession.create("user@james.org");
         MessageMoves messageMoves = MessageMoves.builder()
             .targetMailboxIds(TestId.of(2))
             .previousMailboxIds(TestId.of(1))
@@ -89,7 +89,7 @@ public class MessageMoveEventTest {
     @Test
     public void builderShouldBuildWhenFieldsAreGiven() {
         String username = "user@james.org";
-        MockMailboxSession session = new MockMailboxSession(username);
+        MailboxSession session = MailboxSession.create(username);
         MessageMoves messageMoves = MessageMoves.builder()
             .targetMailboxIds(TestId.of(2))
             .previousMailboxIds(TestId.of(1))
@@ -110,7 +110,7 @@ public class MessageMoveEventTest {
     @Test
     public void isMoveToShouldReturnFalseWhenMailboxIdIsNotInAddedMailboxIds() {
         MessageMoveEvent event = MessageMoveEvent.builder()
-            .session(new MockMailboxSession("user@james.org"))
+            .session(MailboxSession.create("user@james.org"))
             .messageMoves(MessageMoves.builder()
                     .previousMailboxIds(TestId.of(1))
                     .targetMailboxIds(TestId.of(2))
@@ -125,7 +125,7 @@ public class MessageMoveEventTest {
     public void isMoveToShouldReturnTrueWhenMailboxIdIsInAddedMailboxIds() {
         TestId mailboxId = TestId.of(123);
         MessageMoveEvent event = MessageMoveEvent.builder()
-            .session(new MockMailboxSession("user@james.org"))
+            .session(MailboxSession.create("user@james.org"))
             .messageMoves(MessageMoves.builder()
                 .previousMailboxIds(TestId.of(1))
                 .targetMailboxIds(TestId.of(2), mailboxId)
@@ -139,7 +139,7 @@ public class MessageMoveEventTest {
     @Test
     public void isMoveFromShouldReturnFalseWhenMailboxIdIsNotInRemovedMailboxIds() {
         MessageMoveEvent event = MessageMoveEvent.builder()
-            .session(new MockMailboxSession("user@james.org"))
+            .session(MailboxSession.create("user@james.org"))
             .messageMoves(MessageMoves.builder()
                     .previousMailboxIds(TestId.of(1))
                     .targetMailboxIds(TestId.of(2))
@@ -154,7 +154,7 @@ public class MessageMoveEventTest {
     public void isMoveFromShouldReturnTrueWhenMailboxIdIsInRemovedMailboxIds() {
         TestId mailboxId = TestId.of(123);
         MessageMoveEvent event = MessageMoveEvent.builder()
-            .session(new MockMailboxSession("user@james.org"))
+            .session(MailboxSession.create("user@james.org"))
             .messageMoves(MessageMoves.builder()
                 .previousMailboxIds(TestId.of(1), mailboxId)
                 .targetMailboxIds(TestId.of(2))

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/MessageUtilsTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/MessageUtilsTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/MessageUtilsTest.java
index 4944ff5..fa06038 100644
--- a/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/MessageUtilsTest.java
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/MessageUtilsTest.java
@@ -31,7 +31,6 @@ import javax.mail.util.SharedByteArrayInputStream;
 
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MessageId;
 import org.apache.james.mailbox.store.mail.model.DefaultMessageId;
 import org.apache.james.mailbox.store.mail.model.Mailbox;
@@ -65,7 +64,7 @@ public class MessageUtilsTest {
     @Before
     public void setUp() throws Exception {
         MockitoAnnotations.initMocks(this);
-        mailboxSession = new MockMailboxSession("user");
+        mailboxSession = MailboxSession.create("user");
         messageUtils = new MessageUtils(mailboxSession, uidProvider, modSeqProvider);
         message = new SimpleMailboxMessage(MESSAGE_ID, new Date(), CONTENT.length(), BODY_START, new SharedByteArrayInputStream(CONTENT.getBytes()), new Flags(), new PropertyBuilder(), mailbox.getMailboxId());
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mpt/impl/imap-mailbox/elasticsearch/src/test/java/org/apache/james/mpt/imapmailbox/elasticsearch/host/ElasticSearchHostSystem.java
----------------------------------------------------------------------
diff --git a/mpt/impl/imap-mailbox/elasticsearch/src/test/java/org/apache/james/mpt/imapmailbox/elasticsearch/host/ElasticSearchHostSystem.java b/mpt/impl/imap-mailbox/elasticsearch/src/test/java/org/apache/james/mpt/imapmailbox/elasticsearch/host/ElasticSearchHostSystem.java
index 971c99b..52a2de9 100644
--- a/mpt/impl/imap-mailbox/elasticsearch/src/test/java/org/apache/james/mpt/imapmailbox/elasticsearch/host/ElasticSearchHostSystem.java
+++ b/mpt/impl/imap-mailbox/elasticsearch/src/test/java/org/apache/james/mpt/imapmailbox/elasticsearch/host/ElasticSearchHostSystem.java
@@ -38,6 +38,7 @@ import org.apache.james.imap.encode.main.DefaultImapEncoderFactory;
 import org.apache.james.imap.main.DefaultImapDecoderFactory;
 import org.apache.james.imap.processor.main.DefaultImapProcessorFactory;
 import org.apache.james.mailbox.MailboxManager;
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
 import org.apache.james.mailbox.elasticsearch.IndexAttachments;
 import org.apache.james.mailbox.elasticsearch.MailboxElasticSearchConstants;
@@ -51,7 +52,6 @@ import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.inmemory.InMemoryId;
 import org.apache.james.mailbox.inmemory.InMemoryMessageId;
 import org.apache.james.mailbox.inmemory.manager.InMemoryIntegrationResources;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.store.StoreMailboxManager;
 import org.apache.james.mailbox.store.StoreSubscriptionManager;
 import org.apache.james.mailbox.store.extractor.DefaultTextExtractor;
@@ -116,7 +116,7 @@ public class ElasticSearchHostSystem extends JamesImapHostSystem {
             mailboxManager);
 
         mailboxManager.setMessageSearchIndex(searchIndex);
-        mailboxManager.addGlobalListener(searchIndex, new MockMailboxSession("admin"));
+        mailboxManager.addGlobalListener(searchIndex, MailboxSession.create("admin"));
 
         ImapProcessor defaultImapProcessorFactory =
             DefaultImapProcessorFactory.createDefaultProcessor(mailboxManager,

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java
----------------------------------------------------------------------
diff --git a/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java b/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java
index 3c36732..6ae41c4 100644
--- a/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java
+++ b/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java
@@ -26,12 +26,12 @@ import org.apache.james.imap.encode.main.DefaultImapEncoderFactory;
 import org.apache.james.imap.main.DefaultImapDecoderFactory;
 import org.apache.james.imap.processor.main.DefaultImapProcessorFactory;
 import org.apache.james.mailbox.MailboxManager;
+import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.inmemory.manager.InMemoryIntegrationResources;
 import org.apache.james.mailbox.inmemory.quota.InMemoryCurrentQuotaManager;
 import org.apache.james.mailbox.inmemory.quota.InMemoryPerUserMaxQuotaManager;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.quota.QuotaRootResolver;
 import org.apache.james.mailbox.store.StoreMailboxManager;
 import org.apache.james.mailbox.store.StoreSubscriptionManager;
@@ -80,7 +80,7 @@ public class InMemoryHostSystem extends JamesImapHostSystem {
         mailboxManager.setQuotaRootResolver(quotaRootResolver);
         mailboxManager.setQuotaManager(quotaManager);
         mailboxManager.setQuotaUpdater(quotaUpdater);
-        mailboxManager.addGlobalListener(quotaUpdater, new MockMailboxSession("admin"));
+        mailboxManager.addGlobalListener(quotaUpdater, MailboxSession.create("admin"));
 
         final ImapProcessor defaultImapProcessorFactory = DefaultImapProcessorFactory.createDefaultProcessor(mailboxManager, new StoreSubscriptionManager(mailboxManager.getMapperFactory()), quotaManager, quotaRootResolver, new DefaultMetricFactory());
         configure(new DefaultImapDecoderFactory().buildImapDecoder(),

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/protocols/imap/src/test/java/org/apache/james/imap/api/ImapSessionUtilsTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/api/ImapSessionUtilsTest.java b/protocols/imap/src/test/java/org/apache/james/imap/api/ImapSessionUtilsTest.java
index 86e3e99..8ec6e66 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/api/ImapSessionUtilsTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/api/ImapSessionUtilsTest.java
@@ -24,13 +24,12 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
 import org.apache.james.imap.encode.FakeImapSession;
 import org.apache.james.mailbox.MailboxSession;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.junit.Before;
 import org.junit.Test;
 
 public class ImapSessionUtilsTest {
     private static final String USERNAME = "username";
-    private static final MailboxSession MAILBOX_SESSION = new MockMailboxSession(USERNAME);
+    private static final MailboxSession MAILBOX_SESSION = MailboxSession.create(USERNAME);
     private FakeImapSession fakeImapSession;
 
     @Before

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/CreateCommandParserTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/CreateCommandParserTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/CreateCommandParserTest.java
index bbba010..6d698af 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/CreateCommandParserTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/CreateCommandParserTest.java
@@ -35,7 +35,6 @@ import org.apache.james.imap.api.process.ImapSession;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
 import org.apache.james.imap.message.request.CreateRequest;
 import org.apache.james.mailbox.MailboxSession;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.protocols.imap.DecodingException;
 import org.junit.Before;
 import org.junit.Test;
@@ -52,7 +51,7 @@ public class CreateCommandParserTest {
     @Before
     public void setUp() throws Exception {
         mockImapSession = mock(ImapSession.class);
-        mailboxSession = new MockMailboxSession("userName");
+        mailboxSession = MailboxSession.create("userName");
 
         when(mockImapSession.getAttribute(ImapSessionUtils.MAILBOX_SESSION_ATTRIBUTE_SESSION_KEY)).thenReturn(mailboxSession);
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/protocols/imap/src/test/java/org/apache/james/imap/processor/GetAnnotationProcessorTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/processor/GetAnnotationProcessorTest.java b/protocols/imap/src/test/java/org/apache/james/imap/processor/GetAnnotationProcessorTest.java
index 5a9796a..0523335 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/processor/GetAnnotationProcessorTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/processor/GetAnnotationProcessorTest.java
@@ -50,7 +50,6 @@ import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.exception.MailboxNotFoundException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxAnnotation;
 import org.apache.james.mailbox.model.MailboxAnnotationKey;
 import org.apache.james.mailbox.model.MailboxPath;
@@ -103,7 +102,7 @@ public class GetAnnotationProcessorTest {
         mockResponder = mock(ImapProcessor.Responder.class);
         mockImapSession = mock(ImapSession.class);
 
-        mailboxSession = new MockMailboxSession("username");
+        mailboxSession = MailboxSession.create("username");
         inbox = MailboxPath.inbox(mailboxSession);
         keys = ImmutableSet.of(PRIVATE_KEY);
         annotationRequestBuilder = GetAnnotationRequest.builder()

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/protocols/imap/src/test/java/org/apache/james/imap/processor/GetQuotaProcessorTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/processor/GetQuotaProcessorTest.java b/protocols/imap/src/test/java/org/apache/james/imap/processor/GetQuotaProcessorTest.java
index c3136d1..6079b5e 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/processor/GetQuotaProcessorTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/processor/GetQuotaProcessorTest.java
@@ -43,7 +43,6 @@ import org.apache.james.imap.message.response.UnpooledStatusResponseFactory;
 import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.exception.MailboxException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxACL;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.Quota;
@@ -60,10 +59,10 @@ import com.google.common.collect.ImmutableList;
 public class GetQuotaProcessorTest {
 
     private static final QuotaRoot QUOTA_ROOT = QuotaRoot.quotaRoot("plop", Optional.empty());
-    public static final MailboxPath MAILBOX_PATH = new MailboxPath("namespace", "plop", "INBOX");
-    public static final Quota<QuotaCount> MESSAGE_QUOTA =
+    private static final MailboxPath MAILBOX_PATH = new MailboxPath("namespace", "plop", "INBOX");
+    private static final Quota<QuotaCount> MESSAGE_QUOTA =
         Quota.<QuotaCount>builder().used(QuotaCount.count(24)).computedLimit(QuotaCount.count(1589)).build();
-    public static final Quota<QuotaSize> STORAGE_QUOTA =
+    private static final Quota<QuotaSize> STORAGE_QUOTA =
         Quota.<QuotaSize>builder().used(QuotaSize.size(240)).computedLimit(QuotaSize.size(15890)).build();
 
     private GetQuotaProcessor testee;
@@ -76,7 +75,7 @@ public class GetQuotaProcessorTest {
 
     @Before
     public void setUp() throws Exception {
-        mailboxSession = new MockMailboxSession("plop");
+        mailboxSession = MailboxSession.create("plop");
         UnpooledStatusResponseFactory statusResponseFactory = new UnpooledStatusResponseFactory();
         mockedImapSession = mock(ImapSession.class);
         mockedQuotaManager = mock(QuotaManager.class);

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/protocols/imap/src/test/java/org/apache/james/imap/processor/GetQuotaRootProcessorTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/processor/GetQuotaRootProcessorTest.java b/protocols/imap/src/test/java/org/apache/james/imap/processor/GetQuotaRootProcessorTest.java
index a221e72..6558bf8 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/processor/GetQuotaRootProcessorTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/processor/GetQuotaRootProcessorTest.java
@@ -46,7 +46,6 @@ import org.apache.james.imap.message.response.UnpooledStatusResponseFactory;
 import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.exception.MailboxException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxACL;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.Quota;
@@ -61,10 +60,10 @@ import org.mockito.ArgumentCaptor;
 public class GetQuotaRootProcessorTest {
 
     private static final QuotaRoot QUOTA_ROOT = QuotaRoot.quotaRoot("plop", Optional.empty());
-    public static final MailboxPath MAILBOX_PATH = MailboxPath.forUser("plop", "INBOX");
-    public static final Quota<QuotaCount> MESSAGE_QUOTA =
+    private static final MailboxPath MAILBOX_PATH = MailboxPath.forUser("plop", "INBOX");
+    private static final Quota<QuotaCount> MESSAGE_QUOTA =
         Quota.<QuotaCount>builder().used(QuotaCount.count(24)).computedLimit(QuotaCount.count(1589)).build();
-    public static final Quota<QuotaSize> STORAGE_QUOTA =
+    private static final Quota<QuotaSize> STORAGE_QUOTA =
         Quota.<QuotaSize>builder().used(QuotaSize.size(240)).computedLimit(QuotaSize.size(15890)).build();
 
     private GetQuotaRootProcessor testee;
@@ -77,7 +76,7 @@ public class GetQuotaRootProcessorTest {
 
     @Before
     public void setUp() {
-        mailboxSession = new MockMailboxSession("plop");
+        mailboxSession = MailboxSession.create("plop");
         UnpooledStatusResponseFactory statusResponseFactory = new UnpooledStatusResponseFactory();
         mockedImapSession = mock(ImapSession.class);
         mockedQuotaManager = mock(QuotaManager.class);

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/protocols/imap/src/test/java/org/apache/james/imap/processor/SetAnnotationProcessorTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/processor/SetAnnotationProcessorTest.java b/protocols/imap/src/test/java/org/apache/james/imap/processor/SetAnnotationProcessorTest.java
index e9cc6b6..f368d2e 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/processor/SetAnnotationProcessorTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/processor/SetAnnotationProcessorTest.java
@@ -46,7 +46,6 @@ import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.exception.AnnotationException;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.exception.MailboxNotFoundException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxAnnotation;
 import org.apache.james.mailbox.model.MailboxAnnotationKey;
 import org.apache.james.mailbox.model.MailboxPath;
@@ -91,7 +90,7 @@ public class SetAnnotationProcessorTest {
         mockResponder = mock(ImapProcessor.Responder.class);
         mockImapSession = mock(ImapSession.class);
 
-        mockMailboxSession = new MockMailboxSession("username");
+        mockMailboxSession = MailboxSession.create("username");
         inbox = MailboxPath.inbox(mockMailboxSession);
         mailboxAnnotations = ImmutableList.of(MailboxAnnotation.newInstance(new MailboxAnnotationKey("/private/key"), "anyValue"));
         request = new SetAnnotationRequest(TAG, ImapCommand.anyStateCommand("Name"), ImapConstants.INBOX_NAME, mailboxAnnotations);

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/protocols/imap/src/test/java/org/apache/james/imap/processor/SetQuotaProcessorTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/processor/SetQuotaProcessorTest.java b/protocols/imap/src/test/java/org/apache/james/imap/processor/SetQuotaProcessorTest.java
index 4f6340e..d4cde5c 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/processor/SetQuotaProcessorTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/processor/SetQuotaProcessorTest.java
@@ -35,7 +35,6 @@ import org.apache.james.imap.message.request.SetQuotaRequest;
 import org.apache.james.imap.message.response.UnpooledStatusResponseFactory;
 import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.mailbox.MailboxSession;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.metrics.api.NoopMetricFactory;
 import org.junit.Before;
 import org.junit.Test;
@@ -50,7 +49,7 @@ public class SetQuotaProcessorTest {
 
     @Before
     public void setUp() {
-        mailboxSession = new MockMailboxSession("plop");
+        mailboxSession = MailboxSession.create("plop");
         UnpooledStatusResponseFactory statusResponseFactory = new UnpooledStatusResponseFactory();
         mockedImapSession = mock(ImapSession.class);
         mockedResponder = mock(ImapProcessor.Responder.class);

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/protocols/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java b/protocols/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
index 3bc16e9..22b8acb 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
@@ -38,7 +38,6 @@ import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageManager;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.exception.MailboxException;
-import org.apache.james.mailbox.mock.MockMailboxSession;
 import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageResult;
@@ -90,8 +89,8 @@ public class MailboxEventAnalyserTest {
 
 
     private static final MessageUid MESSAGE_UID = MessageUid.of(1);
-    private static final MockMailboxSession MAILBOX_SESSION = new MockMailboxSession("user");
-    private static final MockMailboxSession OTHER_MAILBOX_SESSION = new MockMailboxSession("user");
+    private static final MailboxSession MAILBOX_SESSION = MailboxSession.create("user");
+    private static final MailboxSession OTHER_MAILBOX_SESSION = MailboxSession.create("user");
     private static final char PATH_DELIMITER = '.';
     private static final MailboxPath MAILBOX_PATH = new MailboxPath("namespace", "user", "name");
     private static final TestId MAILBOX_ID = TestId.of(36);

http://git-wip-us.apache.org/repos/asf/james-project/blob/71c5a800/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/MailboxAppender.java
----------------------------------------------------------------------
diff --git a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/MailboxAppender.java b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/MailboxAppender.java
index 95e1246..1f19b26 100644
--- a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/MailboxAppender.java
+++ b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/MailboxAppender.java
@@ -77,7 +77,7 @@ public class MailboxAppender {
         createMailboxIfNotExist(session, path);
         final MessageManager mailbox = mailboxManager.getMailbox(path, session);
         if (mailbox == null) {
-            throw new MessagingException("Mailbox " + path + " for user " + session.getUser().getUserName() + " was not found on this server.");
+            throw new MessagingException("Mailbox " + path + " for user " + session.getUser().asString() + " was not found on this server.");
         }
         return mailbox.appendMessage(MessageManager.AppendCommand.builder()
             .recent()


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