JAMES-1697 Rely on MPT features for running 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/7c973b2a Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/7c973b2a Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/7c973b2a Branch: refs/heads/master Commit: 7c973b2ada7494ba3046c503dd936bcce321dbb2 Parents: 758886d Author: Benoit Tellier <[email protected]> Authored: Mon Mar 14 13:00:40 2016 +0700 Committer: Benoit Tellier <[email protected]> Committed: Tue Mar 22 14:21:12 2016 +0700 ---------------------------------------------------------------------- .../org/apache/james/mpt/api/ImapFeatures.java | 5 +- .../cassandra/CassandraMailboxTest.java | 51 +------------------- .../cassandra/host/CassandraHostSystem.java | 5 +- .../mpt/imapmailbox/AbstractMailboxTest.java | 6 +++ .../james/mpt/imapmailbox/suite/Move.java | 7 ++- .../james/mpt/imapmailbox/suite/QuotaTest.java | 3 ++ .../mpt/imapmailbox/suite/UserFlagsSupport.java | 7 ++- .../inmemory/InMemoryMailboxTest.java | 49 +------------------ .../inmemory/host/InMemoryHostSystem.java | 5 +- .../mpt/imapmailbox/jpa/host/JPAHostSystem.java | 2 +- 10 files changed, 36 insertions(+), 104 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/7c973b2a/mpt/core/src/main/java/org/apache/james/mpt/api/ImapFeatures.java ---------------------------------------------------------------------- diff --git a/mpt/core/src/main/java/org/apache/james/mpt/api/ImapFeatures.java b/mpt/core/src/main/java/org/apache/james/mpt/api/ImapFeatures.java index b935f25..e35f40c 100644 --- a/mpt/core/src/main/java/org/apache/james/mpt/api/ImapFeatures.java +++ b/mpt/core/src/main/java/org/apache/james/mpt/api/ImapFeatures.java @@ -28,7 +28,10 @@ import com.google.common.collect.ImmutableSet; public class ImapFeatures { public enum Feature { - NAMESPACE_SUPPORT + NAMESPACE_SUPPORT, + MOVE_SUPPORT, + USER_FLAGS_SUPPORT, + QUOTA_SUPPORT } public static ImapFeatures of(Feature... features) { http://git-wip-us.apache.org/repos/asf/james-project/blob/7c973b2a/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/CassandraMailboxTest.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/CassandraMailboxTest.java b/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/CassandraMailboxTest.java index 643c9c6..7ea7e29 100644 --- a/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/CassandraMailboxTest.java +++ b/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/CassandraMailboxTest.java @@ -19,57 +19,10 @@ package org.apache.james.mpt.imapmailbox.cassandra; -import org.apache.james.mpt.imapmailbox.suite.AuthenticatedState; -import org.apache.james.mpt.imapmailbox.suite.ConcurrentSessions; -import org.apache.james.mpt.imapmailbox.suite.Events; -import org.apache.james.mpt.imapmailbox.suite.Expunge; -import org.apache.james.mpt.imapmailbox.suite.Fetch; -import org.apache.james.mpt.imapmailbox.suite.FetchBodySection; -import org.apache.james.mpt.imapmailbox.suite.FetchBodyStructure; -import org.apache.james.mpt.imapmailbox.suite.FetchHeaders; -import org.apache.james.mpt.imapmailbox.suite.Listing; -import org.apache.james.mpt.imapmailbox.suite.Move; -import org.apache.james.mpt.imapmailbox.suite.NonAuthenticatedState; -import org.apache.james.mpt.imapmailbox.suite.PartialFetch; -import org.apache.james.mpt.imapmailbox.suite.QuotaTest; -import org.apache.james.mpt.imapmailbox.suite.Rename; -import org.apache.james.mpt.imapmailbox.suite.Search; -import org.apache.james.mpt.imapmailbox.suite.Security; -import org.apache.james.mpt.imapmailbox.suite.Select; -import org.apache.james.mpt.imapmailbox.suite.SelectedInbox; -import org.apache.james.mpt.imapmailbox.suite.SelectedState; -import org.apache.james.mpt.imapmailbox.suite.UidSearch; -import org.apache.james.mpt.imapmailbox.suite.UserFlagsSupport; -import org.apache.onami.test.OnamiSuite; +import org.apache.james.mpt.imapmailbox.AbstractMailboxTest; import org.apache.onami.test.annotation.GuiceModules; -import org.junit.runner.RunWith; -import org.junit.runners.Suite; -@RunWith(OnamiSuite.class) [email protected]({ - AuthenticatedState.class, - ConcurrentSessions.class, - Events.class, - Expunge.class, - Fetch.class, - FetchBodySection.class, - FetchBodyStructure.class, - FetchHeaders.class, - Listing.class, - NonAuthenticatedState.class, - PartialFetch.class, - Rename.class, - Search.class, - Security.class, - Select.class, - SelectedInbox.class, - SelectedState.class, - UidSearch.class, - UserFlagsSupport.class, - QuotaTest.class, - Move.class -}) @GuiceModules({ CassandraMailboxTestModule.class }) -public class CassandraMailboxTest { +public class CassandraMailboxTest extends AbstractMailboxTest { } http://git-wip-us.apache.org/repos/asf/james-project/blob/7c973b2a/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java b/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java index eed5ad3..0a23c85 100644 --- a/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java +++ b/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java @@ -54,7 +54,10 @@ import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; public class CassandraHostSystem extends JamesImapHostSystem { - private static final ImapFeatures IMAP_FEATURES = ImapFeatures.of(Feature.NAMESPACE_SUPPORT); + private static final ImapFeatures IMAP_FEATURES = ImapFeatures.of(Feature.NAMESPACE_SUPPORT, + Feature.MOVE_SUPPORT, + Feature.USER_FLAGS_SUPPORT, + Feature.QUOTA_SUPPORT); private final CassandraMailboxManager mailboxManager; private final MockAuthenticator userManager; http://git-wip-us.apache.org/repos/asf/james-project/blob/7c973b2a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/AbstractMailboxTest.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/AbstractMailboxTest.java b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/AbstractMailboxTest.java index f166d7c..d2f6f9d 100644 --- a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/AbstractMailboxTest.java +++ b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/AbstractMailboxTest.java @@ -27,8 +27,10 @@ import org.apache.james.mpt.imapmailbox.suite.FetchBodySection; import org.apache.james.mpt.imapmailbox.suite.FetchBodyStructure; import org.apache.james.mpt.imapmailbox.suite.FetchHeaders; import org.apache.james.mpt.imapmailbox.suite.Listing; +import org.apache.james.mpt.imapmailbox.suite.Move; import org.apache.james.mpt.imapmailbox.suite.NonAuthenticatedState; import org.apache.james.mpt.imapmailbox.suite.PartialFetch; +import org.apache.james.mpt.imapmailbox.suite.QuotaTest; import org.apache.james.mpt.imapmailbox.suite.Rename; import org.apache.james.mpt.imapmailbox.suite.Search; import org.apache.james.mpt.imapmailbox.suite.Security; @@ -36,6 +38,7 @@ import org.apache.james.mpt.imapmailbox.suite.Select; import org.apache.james.mpt.imapmailbox.suite.SelectedInbox; import org.apache.james.mpt.imapmailbox.suite.SelectedState; import org.apache.james.mpt.imapmailbox.suite.UidSearch; +import org.apache.james.mpt.imapmailbox.suite.UserFlagsSupport; import org.apache.onami.test.OnamiSuite; import org.junit.runner.RunWith; import org.junit.runners.Suite.SuiteClasses; @@ -57,6 +60,9 @@ import org.junit.runners.Suite.SuiteClasses; Search.class, Security.class, Select.class, + QuotaTest.class, + UserFlagsSupport.class, + Move.class, SelectedInbox.class, SelectedState.class, UidSearch.class http://git-wip-us.apache.org/repos/asf/james-project/blob/7c973b2a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/Move.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/Move.java b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/Move.java index 489b148..e72998c 100644 --- a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/Move.java +++ b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/Move.java @@ -23,14 +23,16 @@ import java.util.Locale; import javax.inject.Inject; -import org.apache.james.mpt.api.HostSystem; +import org.apache.james.mpt.api.ImapFeatures; +import org.apache.james.mpt.api.ImapHostSystem; import org.apache.james.mpt.imapmailbox.suite.base.BaseSelectedState; +import org.junit.Assume; import org.junit.Test; public class Move extends BaseSelectedState { @Inject - private static HostSystem system; + private static ImapHostSystem system; public Move() throws Exception { super(system); @@ -38,6 +40,7 @@ public class Move extends BaseSelectedState { @Test public void moveShouldWork() throws Exception { + Assume.assumeTrue(system.supports(ImapFeatures.Feature.MOVE_SUPPORT)); scriptTest("Move", Locale.US); } http://git-wip-us.apache.org/repos/asf/james-project/blob/7c973b2a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/QuotaTest.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/QuotaTest.java b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/QuotaTest.java index 63c28ce..43e8222 100644 --- a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/QuotaTest.java +++ b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/QuotaTest.java @@ -19,8 +19,10 @@ package org.apache.james.mpt.imapmailbox.suite; +import org.apache.james.mpt.api.ImapFeatures; import org.apache.james.mpt.api.ImapHostSystem; import org.apache.james.mpt.imapmailbox.suite.base.BaseSelectedState; +import org.junit.Assume; import org.junit.Test; import javax.inject.Inject; @@ -37,6 +39,7 @@ public class QuotaTest extends BaseSelectedState { @Test public void testQuotaScript() throws Exception { + Assume.assumeTrue(system.supports(ImapFeatures.Feature.QUOTA_SUPPORT)); scriptTest("Quota", Locale.CANADA); } } http://git-wip-us.apache.org/repos/asf/james-project/blob/7c973b2a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/UserFlagsSupport.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/UserFlagsSupport.java b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/UserFlagsSupport.java index aa7de12..917f9af 100644 --- a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/UserFlagsSupport.java +++ b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/UserFlagsSupport.java @@ -22,14 +22,16 @@ package org.apache.james.mpt.imapmailbox.suite; import com.google.inject.Inject; import java.util.Locale; -import org.apache.james.mpt.api.HostSystem; +import org.apache.james.mpt.api.ImapFeatures; +import org.apache.james.mpt.api.ImapHostSystem; import org.apache.james.mpt.imapmailbox.suite.base.BaseAuthenticatedState; +import org.junit.Assume; import org.junit.Test; public class UserFlagsSupport extends BaseAuthenticatedState { @Inject - private static HostSystem system; + private static ImapHostSystem system; public UserFlagsSupport() throws Exception { super(system); @@ -37,6 +39,7 @@ public class UserFlagsSupport extends BaseAuthenticatedState { @Test public void testUserFlagsSupport() throws Exception { + Assume.assumeTrue(system.supports(ImapFeatures.Feature.USER_FLAGS_SUPPORT)); scriptTest("UserFlagsSupport", Locale.US); } http://git-wip-us.apache.org/repos/asf/james-project/blob/7c973b2a/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/InMemoryMailboxTest.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/InMemoryMailboxTest.java b/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/InMemoryMailboxTest.java index 26b475e..95493d2 100644 --- a/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/InMemoryMailboxTest.java +++ b/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/InMemoryMailboxTest.java @@ -18,55 +18,10 @@ ****************************************************************/ package org.apache.james.mpt.imapmailbox.inmemory; -import org.apache.james.mpt.imapmailbox.suite.AuthenticatedState; -import org.apache.james.mpt.imapmailbox.suite.ConcurrentSessions; -import org.apache.james.mpt.imapmailbox.suite.Events; -import org.apache.james.mpt.imapmailbox.suite.Expunge; -import org.apache.james.mpt.imapmailbox.suite.Fetch; -import org.apache.james.mpt.imapmailbox.suite.FetchBodySection; -import org.apache.james.mpt.imapmailbox.suite.FetchBodyStructure; -import org.apache.james.mpt.imapmailbox.suite.FetchHeaders; -import org.apache.james.mpt.imapmailbox.suite.Listing; -import org.apache.james.mpt.imapmailbox.suite.Move; -import org.apache.james.mpt.imapmailbox.suite.NonAuthenticatedState; -import org.apache.james.mpt.imapmailbox.suite.PartialFetch; -import org.apache.james.mpt.imapmailbox.suite.QuotaTest; -import org.apache.james.mpt.imapmailbox.suite.Rename; -import org.apache.james.mpt.imapmailbox.suite.Search; -import org.apache.james.mpt.imapmailbox.suite.Security; -import org.apache.james.mpt.imapmailbox.suite.Select; -import org.apache.james.mpt.imapmailbox.suite.SelectedInbox; -import org.apache.james.mpt.imapmailbox.suite.SelectedState; -import org.apache.james.mpt.imapmailbox.suite.UidSearch; -import org.apache.onami.test.OnamiSuite; +import org.apache.james.mpt.imapmailbox.AbstractMailboxTest; import org.apache.onami.test.annotation.GuiceModules; -import org.junit.runner.RunWith; -import org.junit.runners.Suite; -@RunWith(OnamiSuite.class) [email protected]({ - AuthenticatedState.class, - ConcurrentSessions.class, - Events.class, - Expunge.class, - Fetch.class, - FetchBodySection.class, - FetchBodyStructure.class, - FetchHeaders.class, - Listing.class, - NonAuthenticatedState.class, - PartialFetch.class, - Rename.class, - Search.class, - Security.class, - Select.class, - SelectedInbox.class, - SelectedState.class, - UidSearch.class, - QuotaTest.class, - Move.class -}) @GuiceModules({ InMemoryMailboxTestModule.class }) -public class InMemoryMailboxTest { +public class InMemoryMailboxTest extends AbstractMailboxTest { } http://git-wip-us.apache.org/repos/asf/james-project/blob/7c973b2a/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 d054fe1..9c3e427 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 @@ -48,7 +48,10 @@ import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; public class InMemoryHostSystem extends JamesImapHostSystem { - private static final ImapFeatures SUPPORTED_FEATURES = ImapFeatures.of(Feature.NAMESPACE_SUPPORT); + private static final ImapFeatures SUPPORTED_FEATURES = ImapFeatures.of(Feature.NAMESPACE_SUPPORT, + Feature.MOVE_SUPPORT, + Feature.USER_FLAGS_SUPPORT, + Feature.QUOTA_SUPPORT); private InMemoryMailboxManager mailboxManager; private MockAuthenticator userManager; http://git-wip-us.apache.org/repos/asf/james-project/blob/7c973b2a/mpt/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java b/mpt/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java index 95474b4..3848df2 100644 --- a/mpt/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java +++ b/mpt/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java @@ -61,7 +61,7 @@ import org.slf4j.LoggerFactory; public class JPAHostSystem extends JamesImapHostSystem { public static final String META_DATA_DIRECTORY = "target/user-meta-data"; - private static final ImapFeatures SUPPORTED_FEATURES = ImapFeatures.of(Feature.NAMESPACE_SUPPORT); + private static final ImapFeatures SUPPORTED_FEATURES = ImapFeatures.of(Feature.NAMESPACE_SUPPORT, Feature.USER_FLAGS_SUPPORT); public static JamesImapHostSystem build() throws Exception { return new JPAHostSystem(); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
