MAILBOX-344 Maildir do not support MODSEQ search At least MPT tests are failing
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/32c34320 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/32c34320 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/32c34320 Branch: refs/heads/master Commit: 32c343204fc249a1c1c37e38030a8ddb1d83b7d4 Parents: 25d49c6 Author: benwa <[email protected]> Authored: Mon Jul 16 10:57:38 2018 +0700 Committer: benwa <[email protected]> Committed: Tue Jul 17 17:23:48 2018 +0700 ---------------------------------------------------------------------- .../src/main/java/org/apache/james/mpt/api/ImapFeatures.java | 7 +++---- .../mpt/imapmailbox/cassandra/host/CassandraHostSystem.java | 3 ++- .../java/org/apache/james/mpt/imapmailbox/suite/Search.java | 5 +++++ .../elasticsearch/host/ElasticSearchHostSystem.java | 3 ++- .../james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java | 3 ++- .../mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java | 3 ++- .../apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java | 3 ++- .../imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java | 3 ++- 8 files changed, 20 insertions(+), 10 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/32c34320/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 11b12bf..66167bd 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 @@ -30,7 +30,8 @@ public class ImapFeatures { MOVE_SUPPORT, USER_FLAGS_SUPPORT, QUOTA_SUPPORT, - ANNOTATION_SUPPORT + ANNOTATION_SUPPORT, + MOD_SEQ_SEARCH } public static ImapFeatures of(Feature... features) { @@ -49,9 +50,7 @@ public class ImapFeatures { public boolean supports(Feature... features) { Preconditions.checkNotNull(features); - ImmutableSet<Feature> requestedFeatures = ImmutableSet.copyOf(features); - return requestedFeatures.stream() - .allMatch(feature -> supportedFeatures.contains(feature)); + return supportedFeatures.containsAll(ImmutableSet.copyOf(features)); } } http://git-wip-us.apache.org/repos/asf/james-project/blob/32c34320/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 63b0357..c07f7bd 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 @@ -77,7 +77,8 @@ public class CassandraHostSystem extends JamesImapHostSystem { Feature.MOVE_SUPPORT, Feature.USER_FLAGS_SUPPORT, Feature.QUOTA_SUPPORT, - Feature.ANNOTATION_SUPPORT); + Feature.ANNOTATION_SUPPORT, + Feature.MOD_SEQ_SEARCH); private final CassandraModule mailboxModule = new CassandraModuleComposite( new CassandraAclModule(), http://git-wip-us.apache.org/repos/asf/james-project/blob/32c34320/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/Search.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/Search.java b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/Search.java index f613d49..e1f64a5 100644 --- a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/Search.java +++ b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/suite/Search.java @@ -21,10 +21,12 @@ package org.apache.james.mpt.imapmailbox.suite; import java.util.Locale; +import org.apache.james.mpt.api.ImapFeatures; import org.apache.james.mpt.api.ImapHostSystem; import org.apache.james.mpt.imapmailbox.ImapTestConstants; import org.apache.james.mpt.imapmailbox.suite.base.BasicImapCommands; import org.apache.james.mpt.script.SimpleScriptedTestProtocol; +import org.junit.Assume; import org.junit.Before; import org.junit.Test; @@ -47,6 +49,7 @@ public abstract class Search implements ImapTestConstants { @Test public void testSearchAtomsUS() throws Exception { + Assume.assumeTrue(system.supports(ImapFeatures.Feature.MOD_SEQ_SEARCH)); simpleScriptedTestProtocol .withLocale(Locale.US) .run("SearchAtoms"); @@ -54,6 +57,7 @@ public abstract class Search implements ImapTestConstants { @Test public void testSearchAtomsITALY() throws Exception { + Assume.assumeTrue(system.supports(ImapFeatures.Feature.MOD_SEQ_SEARCH)); simpleScriptedTestProtocol .withLocale(Locale.ITALY) .run("SearchAtoms"); @@ -61,6 +65,7 @@ public abstract class Search implements ImapTestConstants { @Test public void testSearchAtomsKOREA() throws Exception { + Assume.assumeTrue(system.supports(ImapFeatures.Feature.MOD_SEQ_SEARCH)); simpleScriptedTestProtocol .withLocale(Locale.KOREA) .run("SearchAtoms"); http://git-wip-us.apache.org/repos/asf/james-project/blob/32c34320/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 c5a387c..0e68773 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 @@ -64,7 +64,8 @@ import org.elasticsearch.client.Client; public class ElasticSearchHostSystem 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.MOD_SEQ_SEARCH); private EmbeddedElasticSearch embeddedElasticSearch; private Path tempDirectory; http://git-wip-us.apache.org/repos/asf/james-project/blob/32c34320/mpt/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java b/mpt/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java index b933b23..0602994 100644 --- a/mpt/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java +++ b/mpt/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java @@ -61,7 +61,8 @@ import org.apache.james.mpt.host.JamesImapHostSystem; public class HBaseHostSystem 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.MOD_SEQ_SEARCH); public static HBaseHostSystem host = null; /** Set this to false if you wish to test it against a real cluster. http://git-wip-us.apache.org/repos/asf/james-project/blob/32c34320/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 2f5a3c4..8160756 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 @@ -50,7 +50,8 @@ public class InMemoryHostSystem extends JamesImapHostSystem { Feature.MOVE_SUPPORT, Feature.USER_FLAGS_SUPPORT, Feature.QUOTA_SUPPORT, - Feature.ANNOTATION_SUPPORT); + Feature.ANNOTATION_SUPPORT, + Feature.MOD_SEQ_SEARCH); private StoreMailboxManager mailboxManager; private InMemoryPerUserMaxQuotaManager perUserMaxQuotaManager; http://git-wip-us.apache.org/repos/asf/james-project/blob/32c34320/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 ebd8e94..73f2ee4 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 @@ -76,7 +76,8 @@ public class JPAHostSystem extends JamesImapHostSystem { private static final ImapFeatures SUPPORTED_FEATURES = ImapFeatures.of(Feature.NAMESPACE_SUPPORT, Feature.USER_FLAGS_SUPPORT, Feature.ANNOTATION_SUPPORT, - Feature.QUOTA_SUPPORT); + Feature.QUOTA_SUPPORT, + Feature.MOD_SEQ_SEARCH); public static JamesImapHostSystem build() throws Exception { return new JPAHostSystem(); http://git-wip-us.apache.org/repos/asf/james-project/blob/32c34320/mpt/impl/imap-mailbox/lucenesearch/src/test/java/org/apache/james/mpt/imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/lucenesearch/src/test/java/org/apache/james/mpt/imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java b/mpt/impl/imap-mailbox/lucenesearch/src/test/java/org/apache/james/mpt/imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java index fb203fd..b5f5742 100644 --- a/mpt/impl/imap-mailbox/lucenesearch/src/test/java/org/apache/james/mpt/imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java +++ b/mpt/impl/imap-mailbox/lucenesearch/src/test/java/org/apache/james/mpt/imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java @@ -70,7 +70,8 @@ import com.google.common.io.Files; public class LuceneSearchHostSystem 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.MOD_SEQ_SEARCH); private static final JpaTestCluster JPA_TEST_CLUSTER = JpaTestCluster.create(JPAMailboxFixture.MAILBOX_PERSISTANCE_CLASSES); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
