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 2017/01/24 05:49:15 UTC

[15/15] james-project git commit: JAMES-1785 GetMessages with multiple mailboxes integration tests

JAMES-1785 GetMessages with multiple mailboxes integration tests

Also includes builder enhancements


Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/9875a46b
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/9875a46b
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/9875a46b

Branch: refs/heads/master
Commit: 9875a46b7920371a9103eeb60306f3d54563d154
Parents: bd6bd22
Author: Benoit Tellier <bt...@linagora.com>
Authored: Wed Jan 18 10:25:04 2017 +0700
Committer: Quynh Nguyen <qn...@linagora.com>
Committed: Tue Jan 24 09:58:20 2017 +0700

----------------------------------------------------------------------
 .../org/apache/james/utils/JmapGuiceProbe.java  | 23 ++++++++++++++-
 .../cucumber/GetMessagesMethodStepdefs.java     | 31 ++++++++++++++++++++
 .../test/resources/cucumber/GetMessages.feature |  9 ++++++
 .../james/jmap/methods/GetMessagesMethod.java   |  1 +
 .../org/apache/james/jmap/model/Message.java    |  8 +++--
 .../apache/james/jmap/model/MessageFactory.java | 11 +++----
 .../james/jmap/model/MessageFactoryTest.java    |  2 +-
 .../apache/james/jmap/model/MessageTest.java    | 24 +++++++--------
 .../jmap/model/SetMessagesResponseTest.java     |  4 +--
 9 files changed, 89 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/9875a46b/server/container/guice/guice-common/src/main/java/org/apache/james/utils/JmapGuiceProbe.java
----------------------------------------------------------------------
diff --git a/server/container/guice/guice-common/src/main/java/org/apache/james/utils/JmapGuiceProbe.java b/server/container/guice/guice-common/src/main/java/org/apache/james/utils/JmapGuiceProbe.java
index cfbbbb6..05e1646 100644
--- a/server/container/guice/guice-common/src/main/java/org/apache/james/utils/JmapGuiceProbe.java
+++ b/server/container/guice/guice-common/src/main/java/org/apache/james/utils/JmapGuiceProbe.java
@@ -19,6 +19,8 @@
 
 package org.apache.james.utils;
 
+import java.util.Arrays;
+
 import javax.inject.Inject;
 
 import org.apache.james.jmap.JMAPServer;
@@ -26,16 +28,30 @@ 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.api.vacation.VacationRepository;
+import org.apache.james.mailbox.MailboxManager;
+import org.apache.james.mailbox.MailboxSession;
+import org.apache.james.mailbox.MessageIdManager;
+import org.apache.james.mailbox.exception.MailboxException;
+import org.apache.james.mailbox.model.MailboxId;
+import org.apache.james.mailbox.model.MessageId;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class JmapGuiceProbe implements GuiceProbe {
 
+    private static final Logger LOGGER = LoggerFactory.getLogger(JmapGuiceProbe.class);
+
     private final VacationRepository vacationRepository;
     private final JMAPServer jmapServer;
+    private final MessageIdManager messageIdManager;
+    private final MailboxManager mailboxManager;
 
     @Inject
-    private JmapGuiceProbe(VacationRepository vacationRepository, JMAPServer jmapServer) {
+    private JmapGuiceProbe(VacationRepository vacationRepository, JMAPServer jmapServer, MessageIdManager messageIdManager, MailboxManager mailboxManager) {
         this.vacationRepository = vacationRepository;
         this.jmapServer = jmapServer;
+        this.messageIdManager = messageIdManager;
+        this.mailboxManager = mailboxManager;
     }
 
     public int getJmapPort() {
@@ -49,4 +65,9 @@ public class JmapGuiceProbe implements GuiceProbe {
     public Vacation retrieveVacation(AccountId accountId) {
         return vacationRepository.retrieveVacation(accountId).join();
     }
+
+    public void setInMailboxes(MessageId messageId, String username, MailboxId... mailboxIds) throws MailboxException {
+        MailboxSession mailboxSession = mailboxManager.createSystemSession(username, LOGGER);
+        messageIdManager.setInMailboxes(messageId, Arrays.asList(mailboxIds), mailboxSession);
+    }
 }

http://git-wip-us.apache.org/repos/asf/james-project/blob/9875a46b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/cucumber/GetMessagesMethodStepdefs.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/cucumber/GetMessagesMethodStepdefs.java b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/cucumber/GetMessagesMethodStepdefs.java
index 26b1e29..85c38d8 100644
--- a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/cucumber/GetMessagesMethodStepdefs.java
+++ b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/cucumber/GetMessagesMethodStepdefs.java
@@ -41,13 +41,16 @@ import org.apache.http.HttpResponse;
 import org.apache.http.client.fluent.Request;
 import org.apache.james.jmap.methods.integration.cucumber.util.TableRow;
 import org.apache.james.mailbox.model.MailboxConstants;
+import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageId;
 import org.javatuples.Pair;
 
+import com.github.fge.lambdas.Throwing;
 import com.github.steveash.guavate.Guavate;
 import com.google.common.base.Charsets;
 import com.google.common.base.Joiner;
+import com.google.common.base.Splitter;
 import com.google.common.collect.ImmutableList;
 import com.jayway.jsonpath.Configuration;
 import com.jayway.jsonpath.DocumentContext;
@@ -59,6 +62,7 @@ import cucumber.api.java.en.Given;
 import cucumber.api.java.en.Then;
 import cucumber.api.java.en.When;
 import cucumber.runtime.java.guice.ScenarioScoped;
+import net.minidev.json.JSONArray;
 
 @ScenarioScoped
 public class GetMessagesMethodStepdefs {
@@ -87,6 +91,16 @@ public class GetMessagesMethodStepdefs {
         this.messageIdsByName = new HashMap<>();
     }
 
+    @Given("^the user has a message \"([^\"]*)\" in \"([^\"]*)\" and \"([^\"]*)\" mailboxes with subject \"([^\"]*)\", content \"([^\"]*)\"$")
+    public void appendMessageInTwoMailboxes(String messageName, String mailbox1, String mailbox2, String subject, String content) throws Throwable {
+        MessageId id = appendMessage(mailbox1, ContentType.noContentType(), subject, content, NO_HEADERS);
+        MailboxId mailboxId1 = mainStepdefs.jmapServer.serverProbe().getMailbox(MailboxConstants.USER_NAMESPACE, userStepdefs.lastConnectedUser, mailbox1).getMailboxId();
+        MailboxId mailboxId2 = mainStepdefs.jmapServer.serverProbe().getMailbox(MailboxConstants.USER_NAMESPACE, userStepdefs.lastConnectedUser, mailbox2).getMailboxId();
+
+        mainStepdefs.jmapServer.getJmapProbe().setInMailboxes(id, userStepdefs.lastConnectedUser, mailboxId1, mailboxId2);
+        messageIdsByName.put(messageName, id);
+    }
+
     @Given("^the user has a message \"([^\"]*)\" in \"([^\"]*)\" mailbox with subject \"([^\"]*)\", content \"([^\"]*)\"$")
     public void appendMessage(String messageName, String mailbox, String subject, String content) throws Throwable {
         MessageId id = appendMessage(mailbox, ContentType.noContentType(), subject, content, NO_HEADERS);
@@ -315,6 +329,23 @@ public class GetMessagesMethodStepdefs {
         assertThat(jsonPath.<String>read(FIRST_MESSAGE + ".id")).isEqualTo(id.serialize());
     }
 
+    @Then("^the message is in \"([^\"]*)\" mailboxes")
+    public void assertMailboxIdsOfTheFirstMessage(String mailboxIds) throws Throwable {
+        List<String> values = Splitter.on(",")
+            .splitToList(mailboxIds).stream()
+            .map(Throwing.function(name -> mainStepdefs.jmapServer
+                .serverProbe()
+                .getMailbox(MailboxConstants.USER_NAMESPACE, userStepdefs.lastConnectedUser, name)
+                .getMailboxId()
+                .serialize()))
+            .distinct()
+            .collect(Guavate.toImmutableList());
+
+        assertThat(jsonPath.<JSONArray>read(FIRST_MESSAGE + ".mailboxIds"))
+            .hasSize(2)
+            .containsOnlyElementsOf(values);
+    }
+
     @Then("^the threadId of the message is \"([^\"]*)\"$")
     public void assertThreadIdOfTheFirstMessage(String threadId) throws Throwable {
         MessageId id = messageIdsByName.get(threadId);

http://git-wip-us.apache.org/repos/asf/james-project/blob/9875a46b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/cucumber/GetMessages.feature
----------------------------------------------------------------------
diff --git a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/cucumber/GetMessages.feature b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/cucumber/GetMessages.feature
index a559e08..d06a81a 100644
--- a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/cucumber/GetMessages.feature
+++ b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/cucumber/GetMessages.feature
@@ -7,6 +7,15 @@ Feature: GetMessages method
     And a connected user "username@domain.tld"
     And "username@domain.tld" has a mailbox "inbox"
 
+  Scenario: Retrieving a message in several mailboxes should return a single message in these mailboxes
+    Given "username@domain.tld" has a mailbox "custom"
+    And the user has a message "m1" in "inbox" and "custom" mailboxes with subject "my test subject", content "testmail"
+    When the user ask for messages "m1"
+    Then no error is returned
+    And the list should contain 1 message
+    And the id of the message is "m1"
+    And the message is in "custom,inbox" mailboxes
+
   Scenario: Retrieving messages with a non null accountId should return a NotSupported error
     When the user ask for messages using its accountId
     Then an error "Not yet implemented" is returned

http://git-wip-us.apache.org/repos/asf/james-project/blob/9875a46b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetMessagesMethod.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetMessagesMethod.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetMessagesMethod.java
index 41f68ae..404e404 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetMessagesMethod.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetMessagesMethod.java
@@ -131,6 +131,7 @@ public class GetMessagesMethod implements Method {
                     .collect(Guavate.toImmutableList());
                 List<MailboxId> mailboxIds = messageResults.stream()
                     .map(MessageResult::getMailboxId)
+                    .distinct()
                     .collect(Guavate.toImmutableList());
                 return messageResults.stream()
                     .findFirst()

http://git-wip-us.apache.org/repos/asf/james-project/blob/9875a46b/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Message.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Message.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Message.java
index f504871..5937560 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Message.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Message.java
@@ -21,6 +21,7 @@ package org.apache.james.jmap.model;
 
 import java.time.ZonedDateTime;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.List;
 import java.util.Map;
 import java.util.Optional;
@@ -99,16 +100,17 @@ public class Message {
             return this;
         }
 
+        @JsonIgnore
         public Builder mailboxId(MailboxId mailboxId) {
-            return this.mailboxIds(ImmutableList.of(mailboxId));
+            return this.fluentMailboxIds(mailboxId);
         }
 
         @JsonIgnore
-        public Builder mailboxIds(MailboxId... mailboxIds) {
+        public Builder fluentMailboxIds(MailboxId... mailboxIds) {
             return this.mailboxIds(Arrays.asList((mailboxIds)));
         }
 
-        public Builder mailboxIds(List<MailboxId> mailboxIds) {
+        public Builder mailboxIds(Collection<MailboxId> mailboxIds) {
             this.mailboxIds = ImmutableList.copyOf(mailboxIds);
             return this;
         }

http://git-wip-us.apache.org/repos/asf/james-project/blob/9875a46b/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/MessageFactory.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/MessageFactory.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/MessageFactory.java
index bc92fc5..9dc1acf 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/MessageFactory.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/MessageFactory.java
@@ -27,6 +27,7 @@ import java.util.Date;
 import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
+import java.util.Set;
 import java.util.TimeZone;
 import java.util.function.Function;
 import java.util.stream.Collectors;
@@ -55,8 +56,8 @@ import com.google.common.base.Preconditions;
 import com.google.common.base.Strings;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.Lists;
 import com.google.common.collect.Multimaps;
+import com.google.common.collect.Sets;
 
 public class MessageFactory {
 
@@ -235,7 +236,7 @@ public class MessageFactory {
             private InputStream content;
             private SharedInputStream sharedContent;
             private List<MessageAttachment> attachments;
-            private List<MailboxId> mailboxIds = Lists.newArrayList();
+            private Set<MailboxId> mailboxIds = Sets.newHashSet();
             private MessageId messageId;
 
             public Builder uid(MessageUid uid) {
@@ -317,10 +318,10 @@ public class MessageFactory {
         private final InputStream content;
         private final SharedInputStream sharedContent;
         private final List<MessageAttachment> attachments;
-        private final List<MailboxId> mailboxIds;
+        private final Set<MailboxId> mailboxIds;
         private final MessageId messageId;
 
-        private MetaDataWithContent(MessageUid uid, long modSeq, Flags flags, long size, Date internalDate, InputStream content, SharedInputStream sharedContent, List<MessageAttachment> attachments, List<MailboxId> mailboxIds, MessageId messageId) {
+        private MetaDataWithContent(MessageUid uid, long modSeq, Flags flags, long size, Date internalDate, InputStream content, SharedInputStream sharedContent, List<MessageAttachment> attachments, Set<MailboxId> mailboxIds, MessageId messageId) {
             this.uid = uid;
             this.modSeq = modSeq;
             this.flags = flags;
@@ -370,7 +371,7 @@ public class MessageFactory {
             return attachments;
         }
 
-        public List<MailboxId> getMailboxIds() {
+        public Set<MailboxId> getMailboxIds() {
             return mailboxIds;
         }
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/9875a46b/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/MessageFactoryTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/MessageFactoryTest.java b/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/MessageFactoryTest.java
index 9381043..c0bd1f3 100644
--- a/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/MessageFactoryTest.java
+++ b/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/MessageFactoryTest.java
@@ -148,7 +148,7 @@ public class MessageFactoryTest {
                 .id(TestMessageId.of(2))
                 .blobId(BlobId.of("2"))
                 .threadId("2")
-                .mailboxIds(ImmutableList.of(MAILBOX_ID))
+                .mailboxId(MAILBOX_ID)
                 .inReplyToMessageId("<SN...@phx.gbl>")
                 .headers(headersMap)
                 .from(user)

http://git-wip-us.apache.org/repos/asf/james-project/blob/9875a46b/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/MessageTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/MessageTest.java b/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/MessageTest.java
index 7cb3db2..0407c36 100644
--- a/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/MessageTest.java
+++ b/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/MessageTest.java
@@ -60,41 +60,41 @@ public class MessageTest {
 
     @Test(expected=IllegalStateException.class)
     public void buildShouldThrowWhenHeadersIsNull() {
-        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").mailboxIds(ImmutableList.of()).build();
+        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").fluentMailboxIds().build();
     }
 
     @Test(expected=IllegalStateException.class)
     public void buildShouldThrowWhenSubjectIsNull() {
-        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").mailboxIds(ImmutableList.of()).headers(ImmutableMap.of()).build();
+        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").fluentMailboxIds().headers(ImmutableMap.of()).build();
     }
 
     @Test(expected=IllegalStateException.class)
     public void buildShouldThrowWhenSubjectIsEmpty() {
-        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").mailboxIds(ImmutableList.of()).headers(ImmutableMap.of())
+        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").fluentMailboxIds().headers(ImmutableMap.of())
             .subject("").build();
     }
 
     @Test(expected=IllegalStateException.class)
     public void buildShouldThrowWhenSizeIsNull() {
-        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").mailboxIds(ImmutableList.of()).headers(ImmutableMap.of())
+        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").fluentMailboxIds().headers(ImmutableMap.of())
             .subject("subject").build();
     }
 
     @Test(expected=IllegalStateException.class)
     public void buildShouldThrowWhenDateIsNull() {
-        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").mailboxIds(ImmutableList.of()).headers(ImmutableMap.of())
+        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").fluentMailboxIds().headers(ImmutableMap.of())
             .subject("subject").size(123).build();
     }
 
     @Test(expected=IllegalStateException.class)
     public void buildShouldThrowWhenPreviewIsNull() {
-        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").mailboxIds(ImmutableList.of()).headers(ImmutableMap.of())
+        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").fluentMailboxIds().headers(ImmutableMap.of())
             .subject("subject").size(123).date(ZonedDateTime.now()).build();
     }
 
     @Test(expected=IllegalStateException.class)
     public void buildShouldThrowWhenPreviewIsEmpty() {
-        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").mailboxIds(ImmutableList.of()).headers(ImmutableMap.of())
+        Message.builder().id(TestMessageId.of(1)).blobId(BlobId.of("blobId")).threadId("threadId").fluentMailboxIds().headers(ImmutableMap.of())
             .subject("subject").size(123).date(ZonedDateTime.now()).preview("").build();
     }
 
@@ -107,7 +107,7 @@ public class MessageTest {
                 .id(TestMessageId.of(1))
                 .blobId(BlobId.of("blobId"))
                 .threadId("threadId")
-                .mailboxIds(ImmutableList.of(InMemoryId.of(456)))
+                .mailboxId(InMemoryId.of(456))
                 .headers(ImmutableMap.of("key", "value"))
                 .subject("subject")
                 .size(123)
@@ -131,7 +131,7 @@ public class MessageTest {
             .id(TestMessageId.of(1))
             .blobId(BlobId.of("blobId"))
             .threadId("threadId")
-            .mailboxIds(ImmutableList.of(InMemoryId.of(456)))
+            .mailboxId(InMemoryId.of(456))
             .headers(ImmutableMap.of("key", "value"))
             .subject("subject")
             .size(123)
@@ -187,7 +187,7 @@ public class MessageTest {
             .id(TestMessageId.of(1))
             .blobId(BlobId.of("blobId"))
             .threadId("threadId")
-            .mailboxIds(ImmutableList.of(InMemoryId.of(456)))
+            .mailboxId(InMemoryId.of(456))
             .inReplyToMessageId("inReplyToMessageId")
             .isUnread(true)
             .isFlagged(true)
@@ -217,7 +217,7 @@ public class MessageTest {
             .id(TestMessageId.of(1))
             .blobId(BlobId.of("blobId"))
             .threadId("threadId")
-            .mailboxIds(ImmutableList.of(InMemoryId.of(456)))
+            .mailboxId(InMemoryId.of(456))
             .headers(ImmutableMap.of("key", "value"))
             .subject("subject")
             .size(1)
@@ -237,7 +237,7 @@ public class MessageTest {
             .id(TestMessageId.of(1))
             .blobId(BlobId.of("blobId"))
             .threadId("threadId")
-            .mailboxIds(ImmutableList.of(InMemoryId.of(456)))
+            .mailboxId(InMemoryId.of(456))
             .headers(ImmutableMap.of("key", "value"))
             .subject("subject")
             .size(1)

http://git-wip-us.apache.org/repos/asf/james-project/blob/9875a46b/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/SetMessagesResponseTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/SetMessagesResponseTest.java b/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/SetMessagesResponseTest.java
index 9340c7a..b75b47c 100644
--- a/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/SetMessagesResponseTest.java
+++ b/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/SetMessagesResponseTest.java
@@ -61,7 +61,7 @@ public class SetMessagesResponseTest {
                 .id(TestMessageId.of(1))
                 .blobId(BlobId.of("blobId"))
                 .threadId("threadId")
-                .mailboxIds(ImmutableList.of(InMemoryId.of(123)))
+                .mailboxId(InMemoryId.of(123))
                 .headers(ImmutableMap.of("key", "value"))
                 .subject("subject")
                 .size(123)
@@ -111,7 +111,7 @@ public class SetMessagesResponseTest {
                 .id(messageId)
                 .blobId(BlobId.of("blobId"))
                 .threadId("threadId")
-                .mailboxIds(ImmutableList.of())
+                .fluentMailboxIds()
                 .headers(ImmutableMap.of())
                 .subject("subject")
                 .size(0)


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