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 2016/04/06 11:21:56 UTC
[12/18] james-project git commit: MAILBOX-266 Improve code coverage
MAILBOX-266 Improve code coverage
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/0ea8bc69
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/0ea8bc69
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/0ea8bc69
Branch: refs/heads/master
Commit: 0ea8bc6996fc81d9464c4adc334856d46c0ec1a4
Parents: aea76c8
Author: Benoit Tellier <bt...@linagora.com>
Authored: Mon Mar 28 16:41:11 2016 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Wed Apr 6 16:18:45 2016 +0700
----------------------------------------------------------------------
.../elasticsearch/IndexCreationFactory.java | 8 +---
.../ElasticSearchIntegrationTest.java | 44 ++++++++++++++++++++
.../query/DateResolutionFormaterTest.java | 9 ++++
.../src/test/resources/documents/frnog.eml | 2 +
.../src/test/resources/documents/mail4.eml | 2 +
5 files changed, 58 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/0ea8bc69/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/IndexCreationFactory.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/IndexCreationFactory.java b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/IndexCreationFactory.java
index fdbfeac..71a6c11 100644
--- a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/IndexCreationFactory.java
+++ b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/IndexCreationFactory.java
@@ -20,7 +20,6 @@
package org.apache.james.mailbox.elasticsearch;
import java.io.IOException;
-import java.util.Optional;
import org.elasticsearch.client.Client;
import org.elasticsearch.common.settings.Settings;
@@ -44,12 +43,7 @@ public class IndexCreationFactory {
}
public static ClientProvider createIndex(ClientProvider clientProvider) {
- try {
- return createIndex(clientProvider, generateSetting(DEFAULT_NB_SHARDS, DEFAULT_NB_REPLICA));
- } catch (IOException e) {
- LOGGER.error("Error while creating index : ", e);
- return clientProvider;
- }
+ return createIndex(clientProvider, DEFAULT_NB_SHARDS, DEFAULT_NB_REPLICA);
}
private static ClientProvider createIndex(ClientProvider clientProvider, Settings settings) {
http://git-wip-us.apache.org/repos/asf/james-project/blob/0ea8bc69/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 9b90b72..95b3f7f 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
@@ -184,6 +184,13 @@ public class ElasticSearchIntegrationTest {
}
@Test
+ public void emptySearchQueryShouldReturnAllUids() throws MailboxException {
+ SearchQuery searchQuery = new SearchQuery();
+ assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
+ .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
+ }
+
+ @Test
public void allShouldReturnAllUids() throws MailboxException {
SearchQuery searchQuery = new SearchQuery();
searchQuery.andCriteria(SearchQuery.all());
@@ -443,6 +450,22 @@ public class ElasticSearchIntegrationTest {
}
@Test
+ public void addressShouldReturnUidHavingRightRecipientWhenCcIsSpecified() throws Exception {
+ SearchQuery searchQuery = new SearchQuery();
+ searchQuery.andCriteria(SearchQuery.address(SearchQuery.AddressType.Cc, "any@any.com"));
+ assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
+ .containsOnly(5L);
+ }
+
+ @Test
+ public void addressShouldReturnUidHavingRightRecipientWhenBccIsSpecified() throws Exception {
+ SearchQuery searchQuery = new SearchQuery();
+ searchQuery.andCriteria(SearchQuery.address(SearchQuery.AddressType.Bcc, "no@no.com"));
+ assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
+ .containsOnly(9L);
+ }
+
+ @Test
public void uidShouldreturnExistingUidsOnTheGivenRanges() throws Exception {
SearchQuery searchQuery = new SearchQuery();
SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 4L), new SearchQuery.NumericRange(6L, 7L)};
@@ -452,6 +475,15 @@ public class ElasticSearchIntegrationTest {
}
@Test
+ public void uidShouldreturnEveryThing() throws Exception {
+ SearchQuery searchQuery = new SearchQuery();
+ SearchQuery.NumericRange[] numericRanges = {};
+ searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+ assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
+ .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
+ }
+
+ @Test
public void youShouldBeAbleToSpecifySeveralCriterionOnASingleQuery() throws Exception {
SearchQuery searchQuery = new SearchQuery();
searchQuery.andCriteria(SearchQuery.headerExists("Precedence"));
@@ -472,6 +504,18 @@ public class ElasticSearchIntegrationTest {
}
@Test
+ public void orShouldReturnResultsMatchinganyRequests() throws Exception {
+ SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 4L)};
+ SearchQuery searchQuery = new SearchQuery();
+ searchQuery.andCriteria(
+ SearchQuery.or(
+ SearchQuery.uid(numericRanges),
+ SearchQuery.modSeqGreaterThan(6L)));
+ assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
+ .containsOnly(2L, 3L, 4L, 6L, 7L, 8L, 9L);
+ }
+
+ @Test
public void notShouldReturnResultsThatDoNotMatchAQuery() throws Exception {
SearchQuery searchQuery = new SearchQuery();
searchQuery.andCriteria(
http://git-wip-us.apache.org/repos/asf/james-project/blob/0ea8bc69/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/query/DateResolutionFormaterTest.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/query/DateResolutionFormaterTest.java b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/query/DateResolutionFormaterTest.java
index c82a050..fed35c1 100644
--- a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/query/DateResolutionFormaterTest.java
+++ b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/query/DateResolutionFormaterTest.java
@@ -43,6 +43,15 @@ public class DateResolutionFormaterTest {
}
@Test
+ public void calculateUpperDateShouldReturnDateUpToTheNextHourUsingHourUnit() throws ParseException {
+ assertThat(
+ ISO_OFFSET_DATE_TIME.format(
+ DateResolutionFormater.computeUpperDate(ZonedDateTime.parse(dateString, ISO_OFFSET_DATE_TIME), SearchQuery.DateResolution.Hour)
+ )
+ ).isEqualTo("2014-01-02T16:00:00Z");
+ }
+
+ @Test
public void calculateUpperDateShouldReturnDateUpToTheNextDayUsingDayUnit() throws ParseException {
assertThat(
ISO_OFFSET_DATE_TIME.format(
http://git-wip-us.apache.org/repos/asf/james-project/blob/0ea8bc69/mailbox/elasticsearch/src/test/resources/documents/frnog.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/frnog.eml b/mailbox/elasticsearch/src/test/resources/documents/frnog.eml
index a12c1ce..505fbde 100644
--- a/mailbox/elasticsearch/src/test/resources/documents/frnog.eml
+++ b/mailbox/elasticsearch/src/test/resources/documents/frnog.eml
@@ -39,6 +39,8 @@ From: Guillaume Genty <gg...@waycom.net>
Organization: Waycom
MIME-Version: 1.0
To: <fr...@frnog.org>
+Cc: no@no.com
+Bcc: no@no.com
Content-Type: text/plain; charset="utf-8"; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: WCM-HV1-EXCH1.wcmnoc.local (2002:c3d6:f04a::c3d6:f04a) To
http://git-wip-us.apache.org/repos/asf/james-project/blob/0ea8bc69/mailbox/elasticsearch/src/test/resources/documents/mail4.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/mail4.eml b/mailbox/elasticsearch/src/test/resources/documents/mail4.eml
index b01da38..584b24c 100644
--- a/mailbox/elasticsearch/src/test/resources/documents/mail4.eml
+++ b/mailbox/elasticsearch/src/test/resources/documents/mail4.eml
@@ -37,6 +37,8 @@ Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28)
Date: Fri, 15 May 2015 06:35:59 +0000 (UTC)
From: "Eric Charles (JIRA)" <ma...@james.apache.org>
To: mailet-api@james.apache.org
+Cc: any@any.com
+Bcc: any@any.com
Message-ID: <JI...@Atlassian.JIRA>
In-Reply-To: <JI...@Atlassian.JIRA>
References: <JI...@Atlassian.JIRA> <JI...@arcas>
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org