JAMES-2580 Tagging BasicFeature to JMAP integration 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/4a70fe5f
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/4a70fe5f
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/4a70fe5f

Branch: refs/heads/master
Commit: 4a70fe5fea6445bf33ff573a8f0ad43d1d7e0969
Parents: b917d26
Author: tran tien duc <dt...@linagora.com>
Authored: Wed Oct 31 16:40:13 2018 +0700
Committer: Antoine Duprat <adup...@linagora.com>
Committed: Wed Nov 7 14:10:29 2018 +0100

----------------------------------------------------------------------
 .../james/jmap/JMAPAuthenticationTest.java       | 16 ++++++++++++----
 .../org/apache/james/jmap/ProvisioningTest.java  |  3 +++
 .../james/jmap/VacationIntegrationTest.java      |  3 +++
 .../james/jmap/VacationRelayIntegrationTest.java |  3 +++
 .../jmap/methods/integration/FilterTest.java     |  9 ++++++++-
 .../integration/ForwardIntegrationTest.java      |  3 +++
 .../integration/GetMailboxesMethodTest.java      |  9 +++++++++
 .../integration/GetMessageListMethodTest.java    | 17 +++++++++++++++--
 .../integration/GetVacationResponseTest.java     |  4 ++++
 .../methods/integration/QuotaMailingTest.java    |  3 +++
 .../methods/integration/SendMDNMethodTest.java   |  3 +++
 .../integration/SetMailboxesMethodTest.java      |  9 +++++++++
 .../integration/SetMessagesMethodTest.java       | 19 +++++++++++++++++++
 .../integration/SetVacationResponseTest.java     |  4 ++++
 14 files changed, 98 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/JMAPAuthenticationTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/JMAPAuthenticationTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/JMAPAuthenticationTest.java
index 406ce41..e2f4e35 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/JMAPAuthenticationTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/JMAPAuthenticationTest.java
@@ -33,12 +33,14 @@ import java.time.format.DateTimeFormatter;
 import java.util.UUID;
 
 import org.apache.james.GuiceJamesServer;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.jmap.model.ContinuationToken;
 import org.apache.james.utils.DataProbeImpl;
 import org.apache.james.utils.JmapGuiceProbe;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import io.restassured.RestAssured;
 import io.restassured.http.ContentType;
@@ -186,6 +188,7 @@ public abstract class JMAPAuthenticationTest {
             .body("methods", hasItem(userCredentials.getPassword()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void mustReturnContinuationTokenWhenValidResquest() throws 
Exception {
         given()
@@ -199,6 +202,7 @@ public abstract class JMAPAuthenticationTest {
             .body("continuationToken", isA(String.class));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void mustReturnAuthenticationFailedWhenBadPassword() throws 
Exception {
         String continuationToken = fromGoodContinuationTokenRequest();
@@ -271,6 +275,7 @@ public abstract class JMAPAuthenticationTest {
             .statusCode(201);
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
mustSendJsonContainingAccessTokenAndEndpointsWhenGoodPassword() throws 
Exception {
         String continuationToken = fromGoodContinuationTokenRequest();
@@ -291,7 +296,7 @@ public abstract class JMAPAuthenticationTest {
     }
     
     @Test
-    public void getMustReturnUnauthorizedWithoutAuthroizationHeader() throws 
Exception {
+    public void getMustReturnUnauthorizedWithoutAuthorizationHeader() throws 
Exception {
         given()
         .when()
             .get("/authentication")
@@ -300,7 +305,7 @@ public abstract class JMAPAuthenticationTest {
     }
 
     @Test
-    public void getMustReturnUnauthorizedWithoutAValidAuthroizationHeader() 
throws Exception {
+    public void getMustReturnUnauthorizedWithoutAValidAuthorizationHeader() 
throws Exception {
         given()
             .header("Authorization", UUID.randomUUID())
         .when()
@@ -309,6 +314,7 @@ public abstract class JMAPAuthenticationTest {
             .statusCode(401);
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMustReturnEndpointsWhenValidAuthorizationHeader() throws 
Exception {
         String continuationToken = fromGoodContinuationTokenRequest();
@@ -326,6 +332,7 @@ public abstract class JMAPAuthenticationTest {
             .body("download", equalTo("/download"));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMustReturnEndpointsWhenValidJwtAuthorizationHeader() throws 
Exception {
         String token = 
"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIn0.T04BTk"
 +
@@ -357,7 +364,7 @@ public abstract class JMAPAuthenticationTest {
         .then()
             .statusCode(200);
     }
-    
+
     @Test
     public void getMustReturnBadCredentialsWhenInvalidJwtAuthorizationHeader() 
throws Exception {
         String token = 
"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIn0.T04BTk"
 +
@@ -417,7 +424,7 @@ public abstract class JMAPAuthenticationTest {
         .then()
             .statusCode(401);
     }
-    
+
     @Test
     public void deleteMustReturnOKNoContentOnValidAuthorizationToken() throws 
Exception {
         String continuationToken = fromGoodContinuationTokenRequest();
@@ -430,6 +437,7 @@ public abstract class JMAPAuthenticationTest {
             .statusCode(204);
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void deleteMustInvalidAuthorizationOnCorrectAuthorization() throws 
Exception {
         String continuationToken = fromGoodContinuationTokenRequest();

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/ProvisioningTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/ProvisioningTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/ProvisioningTest.java
index d977042..d45e9c9 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/ProvisioningTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/ProvisioningTest.java
@@ -33,6 +33,7 @@ import java.io.IOException;
 import java.time.Duration;
 
 import org.apache.james.GuiceJamesServer;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.mailbox.DefaultMailboxes;
 import org.apache.james.modules.MailboxProbeImpl;
 import org.apache.james.util.concurrency.ConcurrentTestRunner;
@@ -41,6 +42,7 @@ import org.apache.james.utils.JmapGuiceProbe;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import io.restassured.RestAssured;
 
@@ -98,6 +100,7 @@ public abstract class ProvisioningTest {
             .body(ARGUMENTS + ".list.name", 
hasItems(DefaultMailboxes.DEFAULT_MAILBOXES.toArray()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void provisionMailboxesShouldSubscribeToThem() throws Exception {
         String token = authenticateJamesUser(baseUri(jmapServer), USER, 
PASSWORD).serialize();

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/VacationIntegrationTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/VacationIntegrationTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/VacationIntegrationTest.java
index 6402152..6c2cb3b 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/VacationIntegrationTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/VacationIntegrationTest.java
@@ -42,6 +42,7 @@ import org.apache.james.GuiceJamesServer;
 import org.apache.james.jmap.api.access.AccessToken;
 import org.apache.james.jmap.api.vacation.AccountId;
 import org.apache.james.jmap.api.vacation.VacationPatch;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.mailbox.DefaultMailboxes;
 import org.apache.james.mailbox.model.MailboxConstants;
 import org.apache.james.mailbox.probe.MailboxProbe;
@@ -52,6 +53,7 @@ import org.apache.james.utils.JmapGuiceProbe;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import io.restassured.RestAssured;
 
@@ -99,6 +101,7 @@ public abstract class VacationIntegrationTest {
         guiceJamesServer.stop();
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void jmapVacationShouldGenerateAReplyWhenActive() throws Exception {
         /* Test scenario :

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/VacationRelayIntegrationTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/VacationRelayIntegrationTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/VacationRelayIntegrationTest.java
index 582a8f5..d619348 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/VacationRelayIntegrationTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/VacationRelayIntegrationTest.java
@@ -33,6 +33,7 @@ import org.apache.james.GuiceJamesServer;
 import org.apache.james.dnsservice.api.InMemoryDNSService;
 import org.apache.james.jmap.api.vacation.AccountId;
 import org.apache.james.jmap.api.vacation.VacationPatch;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.mailbox.DefaultMailboxes;
 import org.apache.james.mailbox.model.MailboxConstants;
 import org.apache.james.mailbox.probe.MailboxProbe;
@@ -47,6 +48,7 @@ import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.ClassRule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 public abstract class VacationRelayIntegrationTest {
 
@@ -97,6 +99,7 @@ public abstract class VacationRelayIntegrationTest {
         guiceJamesServer.stop();
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void forwardingAnEmailShouldWork() throws Exception {
         jmapGuiceProbe.modifyVacation(AccountId.fromString(USER_WITH_DOMAIN), 
VacationPatch

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/FilterTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/FilterTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/FilterTest.java
index fee2696..db25b20 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/FilterTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/FilterTest.java
@@ -46,6 +46,7 @@ import java.util.Locale;
 import org.apache.james.GuiceJamesServer;
 import org.apache.james.jmap.JmapCommonRequests;
 import org.apache.james.jmap.api.access.AccessToken;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.modules.MailboxProbeImpl;
@@ -55,6 +56,7 @@ import org.apache.james.utils.JmapGuiceProbe;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import io.restassured.RestAssured;
 
@@ -155,6 +157,7 @@ public abstract class FilterTest {
             .body(ARGUMENTS + ".description", equalTo("The field 'accountId' 
of 'GetFilterRequest' is not supported"));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setFilterShouldOverwritePreviouslyStoredRules() {
         MailboxId mailbox1 = randomMailboxId();
@@ -436,6 +439,7 @@ public abstract class FilterTest {
             .body(ARGUMENTS + ".updated", hasSize(1));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getFilterShouldRetrievePreviouslyStoredRules() {
         MailboxId mailbox1 = randomMailboxId();
@@ -510,6 +514,7 @@ public abstract class FilterTest {
             .body(ARGUMENTS + ".singleton[1].action.appendIn.mailboxIds", 
containsInAnyOrder(mailbox2.serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setFilterShouldClearPreviouslyStoredRulesWhenEmptyBody() {
         MailboxId mailbox = randomMailboxId();
@@ -689,6 +694,7 @@ public abstract class FilterTest {
             .body(ARGUMENTS + ".singleton[4].condition.comparator", 
equalTo("contains"));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void messageShouldBeAppendedInSpecificMailboxWhenFromRuleMatches() {
         given()
@@ -1020,6 +1026,7 @@ public abstract class FilterTest {
             () -> 
JmapCommonRequests.isAnyMessageFoundInRecipientsMailbox(accessToken, 
matchedMailbox));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void messageShouldBeAppendedInInboxWhenFromDoesNotMatchRule() {
         given()
@@ -1299,7 +1306,7 @@ public abstract class FilterTest {
 
 
     @Test
-    public void 
messageShouldBeAppendedInInboxWhenSubjectRuleDoesNotMatchRuleBecaseOfCase() {
+    public void 
messageShouldBeAppendedInInboxWhenSubjectRuleDoesNotMatchRuleBecauseOfCase() {
         given()
             .header("Authorization", accessToken.serialize())
             .body("[[" +

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/ForwardIntegrationTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/ForwardIntegrationTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/ForwardIntegrationTest.java
index fe8cf43..115a5da 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/ForwardIntegrationTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/ForwardIntegrationTest.java
@@ -44,6 +44,7 @@ import java.util.concurrent.TimeUnit;
 
 import org.apache.james.GuiceJamesServer;
 import org.apache.james.jmap.api.access.AccessToken;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.probe.DataProbe;
 import org.apache.james.utils.DataProbeImpl;
 import org.apache.james.utils.JmapGuiceProbe;
@@ -55,6 +56,7 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import io.restassured.RestAssured;
 import io.restassured.specification.RequestSpecification;
@@ -95,6 +97,7 @@ public abstract class ForwardIntegrationTest {
         jmapServer.stop();
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void messageShouldBeForwardedWhenDefinedInRESTAPI() {
         webAdminApi.put(String.format("/address/forwards/%s/targets/%s", 
ALICE, BOB));

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMailboxesMethodTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMailboxesMethodTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMailboxesMethodTest.java
index 5fcd373..d9a9689 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMailboxesMethodTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMailboxesMethodTest.java
@@ -58,6 +58,7 @@ import org.apache.james.GuiceJamesServer;
 import org.apache.james.core.quota.QuotaCount;
 import org.apache.james.core.quota.QuotaSize;
 import org.apache.james.jmap.api.access.AccessToken;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.jmap.model.mailbox.MailboxNamespace;
 import org.apache.james.mailbox.DefaultMailboxes;
 import org.apache.james.mailbox.MessageManager.AppendCommand;
@@ -80,6 +81,7 @@ import org.apache.james.utils.JmapGuiceProbe;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
@@ -175,6 +177,7 @@ public abstract class GetMailboxesMethodTest {
             .body(ARGUMENTS + ".type", equalTo("invalidArguments"));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMailboxesShouldReturnMailboxesWhenIdsMatch() {
         String mailboxId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
DefaultMailboxes.INBOX).serialize();
@@ -225,6 +228,7 @@ public abstract class GetMailboxesMethodTest {
             .body(ARGUMENTS + ".list", empty());
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMailboxesShouldReturnAllMailboxesWhenIdsIsNull() {
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
"myMailbox");
@@ -344,6 +348,7 @@ public abstract class GetMailboxesMethodTest {
             .body(ARGUMENTS + ".description", 
containsString("{\"ids\":true}"));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
getMailboxesShouldReturnDefaultMailboxesWhenAuthenticatedUserDoesntHaveAnAccountYet()
 {
         String token = 
"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMzM3QGRvbWFpbi50bGQiLCJuYW1lIjoiTmV3IFVzZXIif"
@@ -526,6 +531,7 @@ public abstract class GetMailboxesMethodTest {
             .body(FIRST_MAILBOX + ".role", 
equalTo(DefaultMailboxes.OUTBOX.toLowerCase(Locale.US)));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
getMailboxesShouldReturnMailboxesWithFilteredSharedWithWhenShared() throws 
Exception {
         String mailboxName = "name";
@@ -574,6 +580,7 @@ public abstract class GetMailboxesMethodTest {
         assertThat(sharedWith).containsOnlyKeys(ALICE, CEDRIC);
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMailboxesShouldReturnAllAccessibleMailboxesWhenEmptyIds() 
throws Exception {
         String sharedMailboxName = "BobShared";
@@ -778,6 +785,7 @@ public abstract class GetMailboxesMethodTest {
             .body(FIRST_MAILBOX + 
".quotas['#private&al...@domain.tld']['MESSAGE'].max", nullValue());
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMailboxesShouldReturnMaxStorageQuotasForInboxWhenSet() 
throws Exception {
         
quotaProbe.setGlobalMaxStorage(SerializableQuotaValue.valueOf(Optional.of(QuotaSize.size(42))));
@@ -867,6 +875,7 @@ public abstract class GetMailboxesMethodTest {
             .body(FIRST_MAILBOX + 
".quotas['#private&al...@domain.tld']['MESSAGE'].used", equalTo(0));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
getMailboxesShouldReturnUpdatedQuotasForInboxWhenMailReceived() throws 
Exception {
         String mailboxId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
DefaultMailboxes.INBOX).serialize();

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMessageListMethodTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMessageListMethodTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMessageListMethodTest.java
index f1643a4..525a618 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMessageListMethodTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMessageListMethodTest.java
@@ -50,6 +50,7 @@ import javax.mail.Flags;
 
 import org.apache.james.GuiceJamesServer;
 import org.apache.james.jmap.api.access.AccessToken;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.jmap.model.Number;
 import org.apache.james.mailbox.FlagsBuilder;
 import org.apache.james.mailbox.MessageManager;
@@ -75,6 +76,7 @@ import org.apache.james.utils.JmapGuiceProbe;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import io.restassured.RestAssured;
 
@@ -142,8 +144,9 @@ public abstract class GetMessageListMethodTest {
             .body(ARGUMENTS + ".messageIds", empty());
     }
 
+    @Category(BasicFeature.class)
     @Test
-    public void getMessageListShouldListMessageWhenTheUserHasOnlyReadRight() 
throws Exception {
+    public void getMessagesListShouldListMessageWhenTheUserHasOnlyReadRight() 
throws Exception {
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, BOB, 
"delegated");
         MailboxPath delegatedMailboxPath = MailboxPath.forUser(BOB, 
"delegated");
         ComposedMessageId message = mailboxProbe.appendMessage(BOB, 
delegatedMailboxPath,
@@ -235,6 +238,7 @@ public abstract class GetMessageListMethodTest {
             .body(ARGUMENTS + ".messageIds", 
contains(message.getMessageId().serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMessageListShouldNotDuplicateMessagesInSeveralMailboxes() 
throws Exception {
         MailboxId mailboxId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, "mailbox");
@@ -498,6 +502,7 @@ public abstract class GetMessageListMethodTest {
                 
not(containsInAnyOrder(messageForwarded.getMessageId().serialize()))));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
getMessageListANDOperatorShouldReturnMessagesWhichMatchAllConditions() throws 
Exception {
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
"mailbox");
@@ -748,6 +753,7 @@ public abstract class GetMessageListMethodTest {
             .body(ARGUMENTS + ".messageIds", 
containsInAnyOrder(message1.getMessageId().serialize(), 
message2.getMessageId().serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
getMessageListShouldReturnAllMessagesOfCurrentUserOnlyWhenMultipleMailboxesAndNoParameters()
 throws Exception {
         String otherUser = "other@" + DOMAIN;
@@ -779,6 +785,7 @@ public abstract class GetMessageListMethodTest {
             .body(ARGUMENTS + ".messageIds", 
containsInAnyOrder(message1.getMessageId().serialize(), 
message2.getMessageId().serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
getMessageListShouldExcludeMessagesWhenInMailboxesFilterMatches() throws 
Exception {
         MailboxId mailboxId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, "mailbox");
@@ -859,7 +866,7 @@ public abstract class GetMessageListMethodTest {
     }
 
     @Test
-    public void 
getMessageListShouldExcludeMessagesWhenIdenticalNotInMailboxesAndInmailboxesFilterMatch()
 throws Exception {
+    public void 
getMessageListShouldExcludeMessagesWhenIdenticalNotInMailboxesAndInMailboxesFilterMatch()
 throws Exception {
         MailboxId mailboxId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, "mailbox");
         mailboxProbe.appendMessage(ALICE, MailboxPath.forUser(ALICE, 
"mailbox"),
                 new ByteArrayInputStream("Subject: 
test\r\n\r\ntestmail".getBytes()), new Date(), false, new Flags());
@@ -952,6 +959,7 @@ public abstract class GetMessageListMethodTest {
             .body(ARGUMENTS + ".messageIds", empty());
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMessageListShouldIncludeMessagesWhenTextFilterMatchesBody() 
throws Exception {
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
"mailbox");
@@ -1178,6 +1186,7 @@ public abstract class GetMessageListMethodTest {
             .body(ARGUMENTS + ".messageIds", 
contains(composedMessageId.getMessageId().serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMessageListShouldSortMessagesWhenSortedByDateDefault() 
throws Exception {
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
"mailbox");
@@ -1472,6 +1481,7 @@ public abstract class GetMessageListMethodTest {
             .body(ARGUMENTS + ".messageIds", 
contains(message3.getMessageId().serialize(), 
message2.getMessageId().serialize(), message1.getMessageId().serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMessageListShouldSupportIdSorting() throws Exception {
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
"mailbox");
@@ -1584,6 +1594,7 @@ public abstract class GetMessageListMethodTest {
             .body(ARGUMENTS + ".messageIds", 
contains(message2.getMessageId().serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
getMessageListShouldReturnSkipMessagesWhenPositionAndLimitGiven() throws 
Exception {
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
"mailbox");
@@ -1678,6 +1689,7 @@ public abstract class GetMessageListMethodTest {
             .body(ARGUMENTS + ".messageIds", 
containsInAnyOrder(message1.getMessageId().serialize(), 
message2.getMessageId().serialize(), message3.getMessageId().serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMessageListShouldChainFetchingMessagesWhenAskedFor() throws 
Exception {
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
"mailbox");
@@ -1702,6 +1714,7 @@ public abstract class GetMessageListMethodTest {
             .body("[1][1].list[0].id", 
equalTo(message.getMessageId().serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getMessageListShouldComputeTextBodyWhenNoTextBodyButHtmlBody() 
throws Exception {
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
"mailbox");

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetVacationResponseTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetVacationResponseTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetVacationResponseTest.java
index 2311acb..f4bc58a 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetVacationResponseTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetVacationResponseTest.java
@@ -40,6 +40,7 @@ import org.apache.james.jmap.FixedDateZonedDateTimeProvider;
 import org.apache.james.jmap.api.access.AccessToken;
 import org.apache.james.jmap.api.vacation.AccountId;
 import org.apache.james.jmap.api.vacation.VacationPatch;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.probe.DataProbe;
 import org.apache.james.util.date.ZonedDateTimeProvider;
 import org.apache.james.utils.DataProbeImpl;
@@ -47,6 +48,7 @@ import org.apache.james.utils.JmapGuiceProbe;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import io.restassured.RestAssured;
 import io.restassured.http.ContentType;
@@ -90,6 +92,7 @@ public abstract class GetVacationResponseTest {
         jmapServer.stop();
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getVacationResponseShouldReturnDefaultValue() {
         given()
@@ -115,6 +118,7 @@ public abstract class GetVacationResponseTest {
             .body(ARGUMENTS + ".list[0].htmlBody", nullValue());
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void getVacationResponseShouldReturnStoredValue() {
         jmapGuiceProbe.modifyVacation(AccountId.fromString(ALICE),

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/QuotaMailingTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/QuotaMailingTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/QuotaMailingTest.java
index 0769ea4..7bfde75 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/QuotaMailingTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/QuotaMailingTest.java
@@ -40,6 +40,7 @@ import java.util.stream.Collectors;
 import org.apache.james.GuiceJamesServer;
 import org.apache.james.core.quota.QuotaSize;
 import org.apache.james.jmap.api.access.AccessToken;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.mailbox.DefaultMailboxes;
 import org.apache.james.mailbox.model.MailboxConstants;
 import org.apache.james.mailbox.model.SerializableQuotaValue;
@@ -52,6 +53,7 @@ import org.apache.james.utils.JmapGuiceProbe;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import com.google.common.base.Strings;
 
@@ -95,6 +97,7 @@ public abstract class QuotaMailingTest {
         jmapServer.stop();
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void shouldSendANoticeWhenThresholdExceeded() throws Exception {
         jmapServer.getProbe(QuotaProbesImpl.class)

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SendMDNMethodTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SendMDNMethodTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SendMDNMethodTest.java
index 52a4d42..5cd4620 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SendMDNMethodTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SendMDNMethodTest.java
@@ -48,6 +48,7 @@ import org.apache.james.GuiceJamesServer;
 import org.apache.james.core.quota.QuotaSize;
 import org.apache.james.jmap.MessageAppender;
 import org.apache.james.jmap.api.access.AccessToken;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.mailbox.DefaultMailboxes;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.model.MailboxConstants;
@@ -63,6 +64,7 @@ import org.apache.james.utils.JmapGuiceProbe;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import com.google.common.collect.Iterables;
 
@@ -278,6 +280,7 @@ public abstract class SendMDNMethodTest {
                     "Explanation: Disposition-Notification-To header is 
missing")));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void sendMDNShouldSendAMDNBackToTheOriginalMessageAuthor() {
         String bartSentJmapMessageId = bartSendMessageToHomer();

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetMailboxesMethodTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetMailboxesMethodTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetMailboxesMethodTest.java
index ee25989..6ea2ce6 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetMailboxesMethodTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetMailboxesMethodTest.java
@@ -48,6 +48,7 @@ import java.io.IOException;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.james.GuiceJamesServer;
 import org.apache.james.jmap.api.access.AccessToken;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.mailbox.DefaultMailboxes;
 import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.mailbox.model.MailboxACL;
@@ -65,6 +66,7 @@ import org.hamcrest.Matchers;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
@@ -240,6 +242,7 @@ public abstract class SetMailboxesMethodTest {
         
assertThat(mailboxProbe.listSubscriptions(username)).doesNotContain(overLimitName);
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void userShouldBeSubscribedOnCreatedMailboxWhenCreateMailbox() 
throws Exception {
         String requestBody =
@@ -410,6 +413,7 @@ public abstract class SetMailboxesMethodTest {
             DefaultMailboxes.DRAFTS);
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
subscriptionUserShouldBeDeletedWhenCreateThenDestroyMailboxWithJMAP() throws 
Exception {
         String requestBody =
@@ -521,6 +525,7 @@ public abstract class SetMailboxesMethodTest {
             .body(ARGUMENTS + ".description", equalTo("The field 'sortOrder' 
of 'MailboxCreateRequest' is not supported"));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMailboxesShouldReturnCreatedMailbox() {
         String requestBody =
@@ -866,6 +871,7 @@ public abstract class SetMailboxesMethodTest {
                         ));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMailboxesShouldReturnDestroyedMailbox() {
         MailboxId mailboxId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, username, "myBox");
@@ -1117,6 +1123,7 @@ public abstract class SetMailboxesMethodTest {
             .body(ARGUMENTS + ".updated", contains(mailboxId.serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
setMailboxesShouldReturnUpdatedWhenNameUpdateAskedOnExistingMailbox() {
         MailboxId mailboxId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, username, "myBox");
@@ -1324,6 +1331,7 @@ public abstract class SetMailboxesMethodTest {
             .body(FIRST_MAILBOX + ".sharedWith", hasEntry(user, 
ImmutableList.of(ADMINISTER, WRITE)));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void updateShouldModifyStoredDataWhenUpdatingACL() {
         String myBox = "myBox";
@@ -1539,6 +1547,7 @@ public abstract class SetMailboxesMethodTest {
             .body(ARGUMENTS + ".list[0].name", equalTo("myRenamedBox"));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
setMailboxesShouldReturnMailboxIdWhenMovingToAnotherParentMailbox() {
         MailboxId mailboxId = mailboxProbe

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetMessagesMethodTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetMessagesMethodTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetMessagesMethodTest.java
index 58635d5..a4c3b70 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetMessagesMethodTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetMessagesMethodTest.java
@@ -77,6 +77,7 @@ import org.apache.james.core.quota.QuotaSize;
 import org.apache.james.jmap.HttpJmapAuthentication;
 import org.apache.james.jmap.MessageAppender;
 import org.apache.james.jmap.api.access.AccessToken;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.mailbox.DefaultMailboxes;
 import org.apache.james.mailbox.Event;
 import org.apache.james.mailbox.FlagsBuilder;
@@ -119,6 +120,7 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import com.google.common.base.Strings;
 import com.google.common.collect.ImmutableList;
@@ -282,6 +284,7 @@ public abstract class SetMessagesMethodTest {
             .body(ARGUMENTS + ".destroyed", 
contains(message.getMessageId().serialize()));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMessagesShouldDeleteMessageWhenMatchingMessage() throws 
Exception {
         // Given
@@ -436,6 +439,7 @@ public abstract class SetMessagesMethodTest {
             .body(ARGUMENTS + ".updated", hasSize(0));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMessagesShouldUpdateKeywordsWhenKeywordsArePassed() throws 
MailboxException {
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, USERNAME, 
"mailbox");
@@ -984,6 +988,7 @@ public abstract class SetMessagesMethodTest {
             .body(ARGUMENTS + ".updated", hasSize(0));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMessagesShouldReturnCreatedMessageWhenSendingMessage() {
         String messageCreationId = "creationId1337";
@@ -1281,6 +1286,7 @@ public abstract class SetMessagesMethodTest {
             .body(ARGUMENTS + ".created[\"" + messageCreationId + 
"\"].keywords.$Flagged", equalTo(true));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMessagesShouldAllowDraftCreation() {
         String messageCreationId = "creationId1337";
@@ -1315,6 +1321,7 @@ public abstract class SetMessagesMethodTest {
             .body(ARGUMENTS + ".created", hasKey(messageCreationId));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMessagesShouldNotAllowDraftCreationWhenOverQuota() throws 
MailboxException {
         QuotaProbe quotaProbe = jmapServer.getProbe(QuotaProbesImpl.class);
@@ -1355,6 +1362,7 @@ public abstract class SetMessagesMethodTest {
             .body(ARGUMENTS + ".notCreated[\"" + messageCreationId + 
"\"].type", equalTo("maxQuotaReached"));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
setMessagesWithABigBodyShouldReturnCreatedMessageWhenSendingMessage() {
         
RestAssured.enableLoggingOfRequestAndResponseIfValidationFails(LogDetail.HEADERS);
@@ -1430,6 +1438,7 @@ public abstract class SetMessagesMethodTest {
         }
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMessagesShouldNotAllowCopyWhenOverQuota() throws 
MailboxException {
         QuotaProbe quotaProbe = jmapServer.getProbe(QuotaProbesImpl.class);
@@ -2096,6 +2105,7 @@ public abstract class SetMessagesMethodTest {
             .body(ARGUMENTS + ".notCreated[\"" + messageCreationId + 
"\"].description", endsWith("MailboxId invalid"));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMessagesShouldSendMessageByMovingDraftToOutbox() {
         String draftCreationId = "creationId1337";
@@ -2337,6 +2347,7 @@ public abstract class SetMessagesMethodTest {
             && 
added.getMetaData(added.getUids().get(0)).getMessageId().serialize().equals(messageId);
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMessagesShouldMoveMessageInSentWhenMessageIsSent() {
         // Given
@@ -2724,6 +2735,7 @@ public abstract class SetMessagesMethodTest {
             .body(ARGUMENTS + ".created", aMapWithSize(0));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setMessagesShouldDeliverMessageToRecipient() throws Exception {
         // Sender
@@ -2766,6 +2778,7 @@ public abstract class SetMessagesMethodTest {
         calmlyAwait.atMost(30, TimeUnit.SECONDS).until(() -> 
isAnyMessageFoundInRecipientsMailboxes(recipientToken));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
setMessagesShouldTriggerMaxQuotaReachedWhenTryingToSendMessageAndQuotaReached() 
throws Exception {
         QuotaProbe quotaProbe = jmapServer.getProbe(QuotaProbesImpl.class);
@@ -3238,6 +3251,7 @@ public abstract class SetMessagesMethodTest {
             .spec(getSetMessagesUpdateOKResponseAssertions(messageToMoveId));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void mailboxIdsShouldBeInDestinationWhenUsingForMove() throws 
Exception {
         String newMailboxName = "heartFolder";
@@ -3280,6 +3294,7 @@ public abstract class SetMessagesMethodTest {
             .body(firstMessage + ".mailboxIds", contains(heartFolderId));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void mailboxIdsShouldNotBeAnymoreInSourceWhenUsingForMove() throws 
Exception {
         String newMailboxName = "heartFolder";
@@ -3323,6 +3338,7 @@ public abstract class SetMessagesMethodTest {
             .body(firstMessage + ".mailboxIds", not(contains(inboxId)));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void mailboxIdsShouldBeInBothMailboxWhenUsingForCopy() throws 
Exception {
         String newMailboxName = "heartFolder";
@@ -4044,6 +4060,7 @@ public abstract class SetMessagesMethodTest {
         checkBlobContent(blobId, rawBytes);
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
attachmentsShouldBeRetrievedWhenChainingSetMessagesAndGetMessagesTextAttachment()
 throws Exception {
         byte[] rawBytes = ByteStreams.toByteArray(new ZeroedInputStream(_1MB));
@@ -4599,6 +4616,7 @@ public abstract class SetMessagesMethodTest {
                 hasEntry("X-Forwarded-Message-Id", "forward value")));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
setMessagesShouldUpdateIsAnsweredWhenInReplyToHeaderSentViaOutbox() throws 
Exception {
         OriginalMessage firstMessage = receiveFirstMessage();
@@ -4645,6 +4663,7 @@ public abstract class SetMessagesMethodTest {
             .body(message + ".isAnswered", equalTo(true));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
setMessagesShouldUpdateIsForwardedWhenXForwardedHeaderSentViaOutbox() throws 
Exception {
         OriginalMessage firstMessage = receiveFirstMessage();

http://git-wip-us.apache.org/repos/asf/james-project/blob/4a70fe5f/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetVacationResponseTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetVacationResponseTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetVacationResponseTest.java
index 352ee30..14e35a8 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetVacationResponseTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/SetVacationResponseTest.java
@@ -38,12 +38,14 @@ import org.apache.james.jmap.api.access.AccessToken;
 import org.apache.james.jmap.api.vacation.AccountId;
 import org.apache.james.jmap.api.vacation.Vacation;
 import org.apache.james.jmap.api.vacation.VacationPatch;
+import org.apache.james.jmap.categories.BasicFeature;
 import org.apache.james.util.ValuePatch;
 import org.apache.james.utils.DataProbeImpl;
 import org.apache.james.utils.JmapGuiceProbe;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import io.restassured.RestAssured;
 import io.restassured.http.ContentType;
@@ -169,6 +171,7 @@ public abstract class SetVacationResponseTest {
             .body(ARGUMENTS + ".notUpdated.singleton.description", 
equalTo("There is one VacationResponse object per account, with id set to 
\\\"singleton\\\" and not to " + id));
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void 
setVacationResponseShouldReturnCorrectAnswerUponValidVacationResponse() {
         String bodyRequest = "[[" +
@@ -208,6 +211,7 @@ public abstract class SetVacationResponseTest {
         assertThat(vacation.getSubject()).contains(SUBJECT);
     }
 
+    @Category(BasicFeature.class)
     @Test
     public void setVacationResponseShouldAllowResets() {
         jmapGuiceProbe.modifyVacation(AccountId.fromString(USER),


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

Reply via email to