Author: eric Date: Fri May 29 09:43:59 2015 New Revision: 1682405 URL: http://svn.apache.org/r1682405 Log: Provide end to end testing for Mailbox-11, contributed by Benoit Tellier (MPT-13)
Added: james/mpt/trunk/app/dependency-reduced-pom.xml james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/MailboxCreationDelegate.java Modified: james/mpt/trunk/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/CassandraMailboxTestModule.java james/mpt/trunk/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/host/ImapHostSystem.java james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/AuthenticatedState.java james/mpt/trunk/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/HBaseMailboxTestModule.java james/mpt/trunk/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java james/mpt/trunk/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/InMemoryMailboxTestModule.java james/mpt/trunk/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java james/mpt/trunk/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/JcrMailboxTestModule.java james/mpt/trunk/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/host/JCRHostSystem.java james/mpt/trunk/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/JpaMailboxTestModule.java james/mpt/trunk/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java james/mpt/trunk/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/MaildirMailboxTestModule.java james/mpt/trunk/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/host/MaildirHostSystem.java Added: james/mpt/trunk/app/dependency-reduced-pom.xml URL: http://svn.apache.org/viewvc/james/mpt/trunk/app/dependency-reduced-pom.xml?rev=1682405&view=auto ============================================================================== --- james/mpt/trunk/app/dependency-reduced-pom.xml (added) +++ james/mpt/trunk/app/dependency-reduced-pom.xml Fri May 29 09:43:59 2015 @@ -0,0 +1,95 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <artifactId>apache-james-mpt</artifactId> + <groupId>org.apache.james</groupId> + <version>0.2-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>apache-james-mpt-app</artifactId> + <name>Apache James MPT Application</name> + <description>Apache James Mail Protocol Tester (MPT) is a library providing a framework for the +scriptable functional testing of ASCII based line protocols. This application provides easy executable +interfaces to the MPT library.</description> + <url>http://james.apache.org/mpt/app</url> + <scm> + <connection>scm:svn:http://svn.apache.org/repos/asf/james/mpt/trunk/app</connection> + <developerConnection>scm:svn:https://rdon...@svn.apache.org/repos/asf/james/mpt/trunk/app</developerConnection> + <url>http://svn.apache.org/viewcvs.cgi/james/mpt/trunk/app?root=Apache-SVN</url> + </scm> + <build> + <plugins> + <plugin> + <artifactId>maven-shade-plugin</artifactId> + <executions> + <execution> + <phase>package</phase> + <goals> + <goal>shade</goal> + </goals> + </execution> + </executions> + <configuration> + <artifactSet> + <includes> + <include>commons-logging:commons-logging</include> + <include>commons-cli:commons-cli</include> + <include>junit:junit</include> + <include>${project.groupId}:apache-james-mpt-core</include> + </includes> + </artifactSet> + </configuration> + </plugin> + <plugin> + <artifactId>maven-jar-plugin</artifactId> + <configuration> + <archive> + <manifestEntries> + <Main-Class>org.apache.james.mpt.app.Main</Main-Class> + <Specification-Title>Apache James MPT Application</Specification-Title> + <Specification-Version>${project.version}</Specification-Version> + <Specification-Vendor>The Apache Software Foundation</Specification-Vendor> + <Implementation-Title>Apache James MPT Application</Implementation-Title> + <Implementation-Version>${project.version}</Implementation-Version> + <Implementation-Vendor>The Apache Software Foundation</Implementation-Vendor> + <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id> + <url>${project.url}</url> + </manifestEntries> + </archive> + </configuration> + </plugin> + <plugin> + <artifactId>maven-javadoc-plugin</artifactId> + <executions> + <execution> + <id>create-javadocs</id> + <phase>package</phase> + <goals> + <goal>javadoc</goal> + <goal>jar</goal> + </goals> + </execution> + </executions> + <configuration> + <additionalparam>-Xdoclint:none</additionalparam> + </configuration> + </plugin> + </plugins> + </build> + <dependencies> + <dependency> + <groupId>org.apache.james</groupId> + <artifactId>apache-james-mpt-core</artifactId> + <version>0.2-SNAPSHOT</version> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> + <groupId>jmock</groupId> + <artifactId>jmock</artifactId> + <version>1.1.0</version> + <scope>test</scope> + </dependency> + </dependencies> +</project> + Modified: james/mpt/trunk/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/CassandraMailboxTestModule.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/CassandraMailboxTestModule.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/CassandraMailboxTestModule.java (original) +++ james/mpt/trunk/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/CassandraMailboxTestModule.java Fri May 29 09:43:59 2015 @@ -1,6 +1,7 @@ package org.apache.james.mpt.imapmailbox.cassandra; import org.apache.james.mpt.api.HostSystem; +import org.apache.james.mpt.host.ImapHostSystem; import org.apache.james.mpt.imapmailbox.cassandra.host.CassandraHostSystem; import com.google.inject.AbstractModule; @@ -11,12 +12,12 @@ public class CassandraMailboxTestModule @Override protected void configure() { + bind(HostSystem.class).to(ImapHostSystem.class); } @Provides @Singleton - public HostSystem provideHostSystem() throws Exception { + public ImapHostSystem provideHostSystem() throws Exception { return new CassandraHostSystem(); } - } Modified: james/mpt/trunk/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java (original) +++ james/mpt/trunk/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java Fri May 29 09:43:59 2015 @@ -27,13 +27,15 @@ import org.apache.james.mailbox.cassandr import org.apache.james.mailbox.cassandra.CassandraMailboxSessionMapperFactory; import org.apache.james.mailbox.cassandra.mail.CassandraModSeqProvider; import org.apache.james.mailbox.cassandra.mail.CassandraUidProvider; +import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.MockAuthenticator; import org.apache.james.mailbox.store.StoreSubscriptionManager; import org.apache.james.mpt.host.ImapHostSystem; +import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; public class CassandraHostSystem extends ImapHostSystem { - + private final CassandraMailboxManager mailboxManager; private final MockAuthenticator userManager; private CassandraClusterSingleton cassandraClusterSingleton; @@ -73,4 +75,9 @@ public class CassandraHostSystem extends protected void finalize() throws Throwable { super.finalize(); } + + @Override + public void createMailbox(MailboxPath mailboxPath) throws Exception{ + new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + } } Modified: james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/host/ImapHostSystem.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/host/ImapHostSystem.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/host/ImapHostSystem.java (original) +++ james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/host/ImapHostSystem.java Fri May 29 09:43:59 2015 @@ -34,6 +34,7 @@ import org.apache.james.imap.decode.Imap import org.apache.james.imap.decode.main.ImapRequestStreamHandler; import org.apache.james.imap.encode.ImapEncoder; import org.apache.james.mailbox.MailboxSession.User; +import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mpt.api.Continuation; import org.apache.james.mpt.api.HostSystem; import org.apache.james.mpt.session.ImapSessionImpl; @@ -74,6 +75,8 @@ public abstract class ImapHostSystem imp protected abstract void resetData() throws Exception; + public abstract void createMailbox(MailboxPath mailboxPath) throws Exception; + public String getHelloName() { return "JAMES"; } Added: james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/MailboxCreationDelegate.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/MailboxCreationDelegate.java?rev=1682405&view=auto ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/MailboxCreationDelegate.java (added) +++ james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/MailboxCreationDelegate.java Fri May 29 09:43:59 2015 @@ -0,0 +1,46 @@ +/**************************************************************** + * 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.mpt.imapmailbox; + +import org.apache.james.mailbox.MailboxManager; +import org.apache.james.mailbox.MailboxSession; +import org.apache.james.mailbox.model.MailboxPath; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class MailboxCreationDelegate { + + private static final Logger LOGGER = LoggerFactory.getLogger(MailboxCreationDelegate.class); + + private MailboxManager mailboxManager; + + public MailboxCreationDelegate(MailboxManager mailboxManager) { + this.mailboxManager = mailboxManager; + } + + public void createMailbox(MailboxPath mailboxPath) throws Exception{ + MailboxSession mailboxSession = mailboxManager.createSystemSession("system", LOGGER); + mailboxManager.startProcessingRequest(mailboxSession); + mailboxManager.createMailbox(mailboxPath, mailboxSession); + mailboxManager.logout(mailboxSession, true); + mailboxManager.endProcessingRequest(mailboxSession); + } + +} Modified: james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/AuthenticatedState.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/AuthenticatedState.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/AuthenticatedState.java (original) +++ james/mpt/trunk/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/AuthenticatedState.java Fri May 29 09:43:59 2015 @@ -23,7 +23,8 @@ import java.util.Locale; import javax.inject.Inject; -import org.apache.james.mpt.api.HostSystem; +import org.apache.james.mailbox.model.MailboxPath; +import org.apache.james.mpt.host.ImapHostSystem; import org.apache.james.mpt.imapmailbox.suite.base.BaseAuthenticatedState; import org.junit.Ignore; import org.junit.Test; @@ -31,7 +32,7 @@ import org.junit.Test; public class AuthenticatedState extends BaseAuthenticatedState { @Inject - private static HostSystem system; + private static ImapHostSystem system; public AuthenticatedState() throws Exception { super(system); @@ -324,4 +325,40 @@ public class AuthenticatedState extends public void testNamespaceKOREA() throws Exception { scriptTest("Namespace", Locale.KOREA); } + + @Test + public void listShouldNotListMailboxWithOtherNamspaceUS() throws Exception { + system.createMailbox(new MailboxPath("#namespace", USER, "Other")); + scriptTest("ListMailboxes", Locale.US); + } + + @Test + public void listShouldNotListMailboxWithOtherNamspaceITALY() throws Exception { + system.createMailbox(new MailboxPath("#namespace", USER, "Other")); + scriptTest("ListMailboxes", Locale.ITALY); + } + + @Test + public void listShouldNotListMailboxWithOtherNamspaceKOREA() throws Exception { + system.createMailbox(new MailboxPath("#namespace", USER, "Other")); + scriptTest("ListMailboxes", Locale.KOREA); + } + + @Test + public void listShouldNotListMailboxWithOtherUserUS() throws Exception { + system.createMailbox(new MailboxPath("#namespace", USER + "2", "Other")); + scriptTest("ListMailboxes", Locale.US); + } + + @Test + public void listShouldNotListMailboxWithOtherUserITALY() throws Exception { + system.createMailbox(new MailboxPath("#namespace", USER + "2", "Other")); + scriptTest("ListMailboxes", Locale.ITALY); + } + + @Test + public void listShouldNotListMailboxWithOtherUserKOREA() throws Exception { + system.createMailbox(new MailboxPath("#namespace", USER + "2", "Other")); + scriptTest("ListMailboxes", Locale.KOREA); + } } Modified: james/mpt/trunk/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/HBaseMailboxTestModule.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/HBaseMailboxTestModule.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/HBaseMailboxTestModule.java (original) +++ james/mpt/trunk/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/HBaseMailboxTestModule.java Fri May 29 09:43:59 2015 @@ -1,6 +1,7 @@ package org.apache.james.mpt.imapmailbox.hbase; import org.apache.james.mpt.api.HostSystem; +import org.apache.james.mpt.host.ImapHostSystem; import org.apache.james.mpt.imapmailbox.hbase.host.HBaseHostSystem; import com.google.inject.AbstractModule; @@ -11,11 +12,12 @@ public class HBaseMailboxTestModule exte @Override protected void configure() { + bind(HostSystem.class).to(ImapHostSystem.class); } @Provides @Singleton - public HostSystem provideHostSystem() throws Exception { + public ImapHostSystem provideHostSystem() throws Exception { return HBaseHostSystem.build(); } Modified: james/mpt/trunk/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java (original) +++ james/mpt/trunk/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java Fri May 29 09:43:59 2015 @@ -39,10 +39,11 @@ import org.apache.james.mailbox.hbase.HB import org.apache.james.mailbox.hbase.HBaseMailboxSessionMapperFactory; import org.apache.james.mailbox.hbase.mail.HBaseModSeqProvider; import org.apache.james.mailbox.hbase.mail.HBaseUidProvider; +import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.MockAuthenticator; import org.apache.james.mailbox.store.StoreSubscriptionManager; -import org.apache.james.mpt.api.HostSystem; import org.apache.james.mpt.host.ImapHostSystem; +import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; import org.slf4j.LoggerFactory; public class HBaseHostSystem extends ImapHostSystem { @@ -60,7 +61,7 @@ public class HBaseHostSystem extends Ima private MiniHBaseCluster hbaseCluster; private Configuration conf; - public static synchronized HostSystem build() throws Exception { + public static synchronized ImapHostSystem build() throws Exception { if (host == null) { host = new HBaseHostSystem(useMiniCluster); } @@ -137,4 +138,9 @@ public class HBaseHostSystem extends Ima } } } + + @Override + public void createMailbox(MailboxPath mailboxPath) throws Exception{ + new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + } } Modified: james/mpt/trunk/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/InMemoryMailboxTestModule.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/InMemoryMailboxTestModule.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/InMemoryMailboxTestModule.java (original) +++ james/mpt/trunk/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/InMemoryMailboxTestModule.java Fri May 29 09:43:59 2015 @@ -19,6 +19,7 @@ package org.apache.james.mpt.imapmailbox.inmemory; import org.apache.james.mpt.api.HostSystem; +import org.apache.james.mpt.host.ImapHostSystem; import org.apache.james.mpt.imapmailbox.inmemory.host.InMemoryHostSystem; import com.google.inject.AbstractModule; @@ -29,11 +30,12 @@ public class InMemoryMailboxTestModule e @Override protected void configure() { + bind(HostSystem.class).to(ImapHostSystem.class); } @Provides @Singleton - public HostSystem provideHostSystem() throws Exception { + public ImapHostSystem provideHostSystem() throws Exception { return InMemoryHostSystem.build(); } Modified: james/mpt/trunk/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java (original) +++ james/mpt/trunk/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java Fri May 29 09:43:59 2015 @@ -29,11 +29,12 @@ import org.apache.james.mailbox.acl.Simp import org.apache.james.mailbox.acl.UnionMailboxACLResolver; import org.apache.james.mailbox.exception.MailboxException; import org.apache.james.mailbox.inmemory.InMemoryMailboxSessionMapperFactory; +import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.MockAuthenticator; import org.apache.james.mailbox.store.StoreMailboxManager; import org.apache.james.mailbox.store.StoreSubscriptionManager; -import org.apache.james.mpt.api.HostSystem; import org.apache.james.mpt.host.ImapHostSystem; +import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; public class InMemoryHostSystem extends ImapHostSystem { @@ -41,7 +42,7 @@ public class InMemoryHostSystem extends private MockAuthenticator userManager; private InMemoryMailboxSessionMapperFactory factory; - public static HostSystem build() throws Exception { + public static ImapHostSystem build() throws Exception { InMemoryHostSystem host = new InMemoryHostSystem(); return host; } @@ -75,4 +76,8 @@ public class InMemoryHostSystem extends defaultImapProcessorFactory); } + @Override + public void createMailbox(MailboxPath mailboxPath) throws Exception{ + new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + } } Modified: james/mpt/trunk/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/JcrMailboxTestModule.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/JcrMailboxTestModule.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/JcrMailboxTestModule.java (original) +++ james/mpt/trunk/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/JcrMailboxTestModule.java Fri May 29 09:43:59 2015 @@ -19,6 +19,7 @@ package org.apache.james.mpt.imapmailbox.jcr; import org.apache.james.mpt.api.HostSystem; +import org.apache.james.mpt.host.ImapHostSystem; import org.apache.james.mpt.imapmailbox.jcr.host.JCRHostSystem; import com.google.inject.AbstractModule; @@ -29,11 +30,12 @@ public class JcrMailboxTestModule extend @Override protected void configure() { + bind(HostSystem.class).to(ImapHostSystem.class); } @Provides @Singleton - public HostSystem provideHostSystem() throws Exception { + public ImapHostSystem provideImapHostSystem() throws Exception { return JCRHostSystem.build(); } Modified: james/mpt/trunk/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/host/JCRHostSystem.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/host/JCRHostSystem.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/host/JCRHostSystem.java (original) +++ james/mpt/trunk/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/host/JCRHostSystem.java Fri May 29 09:43:59 2015 @@ -39,16 +39,17 @@ import org.apache.james.mailbox.jcr.JCRS import org.apache.james.mailbox.jcr.JCRUtils; import org.apache.james.mailbox.jcr.mail.JCRModSeqProvider; import org.apache.james.mailbox.jcr.mail.JCRUidProvider; +import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.MockAuthenticator; -import org.apache.james.mpt.api.HostSystem; import org.apache.james.mpt.host.ImapHostSystem; +import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; import org.slf4j.LoggerFactory; import org.xml.sax.InputSource; public class JCRHostSystem extends ImapHostSystem{ - public static HostSystem build() throws Exception { + public static ImapHostSystem build() throws Exception { return new JCRHostSystem(); } @@ -150,6 +151,9 @@ public class JCRHostSystem extends ImapH } } - + @Override + public void createMailbox(MailboxPath mailboxPath) throws Exception { + new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + } } Modified: james/mpt/trunk/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/JpaMailboxTestModule.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/JpaMailboxTestModule.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/JpaMailboxTestModule.java (original) +++ james/mpt/trunk/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/JpaMailboxTestModule.java Fri May 29 09:43:59 2015 @@ -19,6 +19,7 @@ package org.apache.james.mpt.imapmailbox.jpa; import org.apache.james.mpt.api.HostSystem; +import org.apache.james.mpt.host.ImapHostSystem; import org.apache.james.mpt.imapmailbox.jpa.host.JPAHostSystem; import com.google.inject.AbstractModule; @@ -29,11 +30,12 @@ public class JpaMailboxTestModule extend @Override protected void configure() { + bind(HostSystem.class).to(ImapHostSystem.class); } @Provides @Singleton - public HostSystem provideHostSystem() throws Exception { + public ImapHostSystem provideImapHostSystem() throws Exception { return JPAHostSystem.build(); } Modified: james/mpt/trunk/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java (original) +++ james/mpt/trunk/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java Fri May 29 09:43:59 2015 @@ -46,10 +46,11 @@ import org.apache.james.mailbox.jpa.mail import org.apache.james.mailbox.jpa.mail.model.openjpa.JPAMessage; import org.apache.james.mailbox.jpa.openjpa.OpenJPAMailboxManager; import org.apache.james.mailbox.jpa.user.model.JPASubscription; +import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.MockAuthenticator; -import org.apache.james.mpt.api.HostSystem; import org.apache.james.mpt.host.ImapHostSystem; +import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; import org.apache.openjpa.persistence.OpenJPAPersistence; import org.slf4j.LoggerFactory; @@ -57,7 +58,7 @@ public class JPAHostSystem extends ImapH public static final String META_DATA_DIRECTORY = "target/user-meta-data"; - public static HostSystem build() throws Exception { + public static ImapHostSystem build() throws Exception { JPAHostSystem host = new JPAHostSystem(); return host; } @@ -154,4 +155,9 @@ public class JPAHostSystem extends ImapH dir.mkdirs(); } + @Override + public void createMailbox(MailboxPath mailboxPath) throws Exception { + new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + } + } Modified: james/mpt/trunk/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/MaildirMailboxTestModule.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/MaildirMailboxTestModule.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/MaildirMailboxTestModule.java (original) +++ james/mpt/trunk/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/MaildirMailboxTestModule.java Fri May 29 09:43:59 2015 @@ -19,6 +19,7 @@ package org.apache.james.mpt.imapmailbox.maildir; import org.apache.james.mpt.api.HostSystem; +import org.apache.james.mpt.host.ImapHostSystem; import org.apache.james.mpt.imapmailbox.maildir.host.MaildirHostSystem; import com.google.inject.AbstractModule; @@ -29,11 +30,12 @@ public class MaildirMailboxTestModule ex @Override protected void configure() { + bind(HostSystem.class).to(ImapHostSystem.class); } @Provides @Singleton - public HostSystem provideHostSystem() throws Exception { + public ImapHostSystem provideImapHostSystem() throws Exception { return MaildirHostSystem.build(); } Modified: james/mpt/trunk/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/host/MaildirHostSystem.java URL: http://svn.apache.org/viewvc/james/mpt/trunk/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/host/MaildirHostSystem.java?rev=1682405&r1=1682404&r2=1682405&view=diff ============================================================================== --- james/mpt/trunk/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/host/MaildirHostSystem.java (original) +++ james/mpt/trunk/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/host/MaildirHostSystem.java Fri May 29 09:43:59 2015 @@ -32,12 +32,13 @@ import org.apache.james.mailbox.acl.Unio import org.apache.james.mailbox.exception.MailboxException; import org.apache.james.mailbox.maildir.MaildirMailboxSessionMapperFactory; import org.apache.james.mailbox.maildir.MaildirStore; +import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.MockAuthenticator; import org.apache.james.mailbox.store.StoreMailboxManager; import org.apache.james.mailbox.store.StoreSubscriptionManager; -import org.apache.james.mpt.api.HostSystem; import org.apache.james.mpt.host.ImapHostSystem; +import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; public class MaildirHostSystem extends ImapHostSystem { @@ -48,7 +49,7 @@ public class MaildirHostSystem extends I private final MockAuthenticator userManager; private final MaildirMailboxSessionMapperFactory mailboxSessionMapperFactory; - public static HostSystem build() throws Exception { + public static ImapHostSystem build() throws Exception { return new MaildirHostSystem(); } @@ -95,4 +96,11 @@ public class MaildirHostSystem extends I dir.mkdirs(); } + @Override + public void createMailbox(MailboxPath mailboxPath) throws Exception { + new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + } + + + } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org