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 ad...@apache.org on 2016/01/13 11:12:10 UTC

svn commit: r1724386 - in /james/project/trunk/server/protocols: jmap-integration-testing/src/test/java/org/apache/james/jmap/methods/ jmap/src/main/java/org/apache/james/jmap/methods/ jmap/src/main/java/org/apache/james/jmap/model/ jmap/src/test/java/...

Author: aduprat
Date: Wed Jan 13 10:12:10 2016
New Revision: 1724386

URL: http://svn.apache.org/viewvc?rev=1724386&view=rev
Log:
JAMES-1648 Finally implement filters on json output. Contributed by Baechler <ma...@gmail.com>

Added:
    james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/MessageProperty.java
Modified:
    james/project/trunk/server/protocols/jmap-integration-testing/src/test/java/org/apache/james/jmap/methods/GetMessagesMethodTest.java
    james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetMessagesMethod.java
    james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/JmapResponse.java
    james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/JmapResponseWriterImpl.java
    james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/GetMessagesRequest.java
    james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Message.java
    james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Property.java
    james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/GetMessagesMethodTest.java
    james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/JmapResponseWriterImplTest.java
    james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/GetMessagesRequestTest.java

Modified: james/project/trunk/server/protocols/jmap-integration-testing/src/test/java/org/apache/james/jmap/methods/GetMessagesMethodTest.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap-integration-testing/src/test/java/org/apache/james/jmap/methods/GetMessagesMethodTest.java?rev=1724386&r1=1724385&r2=1724386&view=diff
==============================================================================
--- james/project/trunk/server/protocols/jmap-integration-testing/src/test/java/org/apache/james/jmap/methods/GetMessagesMethodTest.java (original)
+++ james/project/trunk/server/protocols/jmap-integration-testing/src/test/java/org/apache/james/jmap/methods/GetMessagesMethodTest.java Wed Jan 13 10:12:10 2016
@@ -204,5 +204,4 @@ public abstract class GetMessagesMethodT
         assertThat(JsonPath.parse(response).<Map<String, String>>read(firstMessagePath + ".headers")).containsExactly(MapEntry.entry("subject", "my test subject"));
         assertThat(JsonPath.parse(response).<String>read(firstMessagePath + ".date")).isEqualTo("2014-10-30T14:12:00Z");
     }
-
 }

Modified: james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetMessagesMethod.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetMessagesMethod.java?rev=1724386&r1=1724385&r2=1724386&view=diff
==============================================================================
--- james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetMessagesMethod.java (original)
+++ james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/GetMessagesMethod.java Wed Jan 13 10:12:10 2016
@@ -84,6 +84,7 @@ public class GetMessagesMethod<Id extend
         return Stream.of(JmapResponse.builder().clientId(clientId)
                             .response(getMessagesResponse(mailboxSession, getMessagesRequest))
                             .responseName(RESPONSE_NAME)
+                            .properties(getMessagesRequest.getProperties())
                             .build());
     }
 

Modified: james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/JmapResponse.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/JmapResponse.java?rev=1724386&r1=1724385&r2=1724386&view=diff
==============================================================================
--- james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/JmapResponse.java (original)
+++ james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/JmapResponse.java Wed Jan 13 10:12:10 2016
@@ -23,6 +23,7 @@ import java.util.Optional;
 import java.util.Set;
 
 import org.apache.james.jmap.model.ClientId;
+import org.apache.james.jmap.model.Property;
 
 import com.google.common.annotations.VisibleForTesting;
 
@@ -37,7 +38,7 @@ public class JmapResponse {
         private Method.Response.Name responseName;
         private ClientId id;
         private Method.Response response;
-        private Set<String> properties;
+        private Optional<? extends Set<? extends Property>> properties = Optional.empty();
 
         private Builder() {
         }
@@ -57,11 +58,16 @@ public class JmapResponse {
             return this;
         }
 
-        public Builder properties(Set<String> properties) {
+        public Builder properties(Optional<? extends Set<? extends Property>> properties) {
             this.properties = properties;
             return this;
         }
 
+        public Builder properties(Set<? extends Property> properties) {
+            this.properties = Optional.ofNullable(properties);
+            return this;
+        }
+
         public Builder error() {
             return error(DEFAULT_ERROR_MESSAGE);
         }
@@ -74,7 +80,7 @@ public class JmapResponse {
 
         
         public JmapResponse build() {
-            return new JmapResponse(responseName, id, response, Optional.ofNullable(properties));
+            return new JmapResponse(responseName, id, response, properties);
         }
     }
 
@@ -98,9 +104,9 @@ public class JmapResponse {
     private final Method.Response.Name method;
     private final ClientId clientId;
     private final Method.Response response;
-    private Optional<Set<String>> properties;
+    private Optional<? extends Set<? extends Property>> properties;
     
-    private JmapResponse(Method.Response.Name method, ClientId clientId, Method.Response response, Optional<Set<String>> properties) {
+    private JmapResponse(Method.Response.Name method, ClientId clientId, Method.Response response, Optional<? extends Set<? extends Property>> properties) {
         this.method = method;
         this.clientId = clientId;
         this.response = response;
@@ -119,7 +125,7 @@ public class JmapResponse {
         return clientId;
     }
 
-    public Optional<Set<String>> getProperties() {
+    public Optional<? extends Set<? extends Property>> getProperties() {
         return properties;
     }
 }

Modified: james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/JmapResponseWriterImpl.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/JmapResponseWriterImpl.java?rev=1724386&r1=1724385&r2=1724386&view=diff
==============================================================================
--- james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/JmapResponseWriterImpl.java (original)
+++ james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/JmapResponseWriterImpl.java Wed Jan 13 10:12:10 2016
@@ -25,6 +25,7 @@ import java.util.stream.Stream;
 
 import javax.inject.Inject;
 
+import org.apache.james.jmap.model.Property;
 import org.apache.james.jmap.model.ProtocolResponse;
 
 import com.fasterxml.jackson.databind.Module;
@@ -56,8 +57,11 @@ public class JmapResponseWriterImpl impl
         });
     }
     
-    private FilterProvider buildPropertiesFilter(Optional<Set<String>> properties) {
+    private FilterProvider buildPropertiesFilter(Optional<? extends Set<? extends Property>> properties) {
         PropertyFilter filter = properties
+                .map(x -> x.stream()
+                        .map(Property::asFieldName)
+                        .collect(java.util.stream.Collectors.toSet()))
                 .map(SimpleBeanPropertyFilter::filterOutAllExcept)
                 .orElse(SimpleBeanPropertyFilter.serializeAll());
         return new SimpleFilterProvider().addFilter("propertiesFilter", filter);

Modified: james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/GetMessagesRequest.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/GetMessagesRequest.java?rev=1724386&r1=1724385&r2=1724386&view=diff
==============================================================================
--- james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/GetMessagesRequest.java (original)
+++ james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/GetMessagesRequest.java Wed Jan 13 10:12:10 2016
@@ -21,6 +21,7 @@ package org.apache.james.jmap.model;
 import java.util.Arrays;
 import java.util.Optional;
 
+import com.google.common.collect.ImmutableSet;
 import org.apache.james.jmap.methods.JmapRequest;
 
 import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
@@ -39,7 +40,7 @@ public class GetMessagesRequest implemen
         
         private Optional<String> accountId;
         private ImmutableList.Builder<MessageId> ids;
-        private Optional<ImmutableList<Property>> properties;
+        private Optional<ImmutableSet<MessageProperty>> properties;
 
         private Builder() {
             accountId = Optional.empty();
@@ -57,8 +58,8 @@ public class GetMessagesRequest implemen
             return this;
         }
 
-        public Builder properties(Property... properties) {
-            this.properties = Optional.of(ImmutableList.copyOf(properties));
+        public Builder properties(MessageProperty... properties) {
+            this.properties = Optional.of(ImmutableSet.copyOf(properties));
             return this;
         }
         
@@ -69,9 +70,9 @@ public class GetMessagesRequest implemen
 
     private final Optional<String> accountId;
     private final ImmutableList<MessageId> ids;
-    private final Optional<ImmutableList<Property>> properties;
+    private final Optional<ImmutableSet<MessageProperty>> properties;
 
-    public GetMessagesRequest(Optional<String> accountId, ImmutableList<MessageId> ids, Optional<ImmutableList<Property>> properties) {
+    public GetMessagesRequest(Optional<String> accountId, ImmutableList<MessageId> ids, Optional<ImmutableSet<MessageProperty>> properties) {
         this.accountId = accountId;
         this.ids = ids;
         this.properties = properties;
@@ -85,7 +86,7 @@ public class GetMessagesRequest implemen
         return ids;
     }
     
-    public Optional<ImmutableList<Property>> getProperties() {
+    public Optional<ImmutableSet<MessageProperty>> getProperties() {
         return properties;
     }
 }

Modified: james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Message.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Message.java?rev=1724386&r1=1724385&r2=1724386&view=diff
==============================================================================
--- james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Message.java (original)
+++ james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Message.java Wed Jan 13 10:12:10 2016
@@ -28,6 +28,7 @@ import java.util.Set;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 
+import com.fasterxml.jackson.annotation.JsonFilter;
 import org.apache.commons.lang.NotImplementedException;
 import org.apache.james.jmap.model.message.EMailer;
 import org.apache.james.jmap.model.message.IndexableMessage;
@@ -45,6 +46,7 @@ import com.google.common.collect.Multima
 import org.apache.james.mailbox.store.mail.model.MailboxMessage;
 
 @JsonDeserialize(builder = Message.Builder.class)
+@JsonFilter("propertiesFilter")
 public class Message {
     public static final String NO_SUBJECT = "(No subject)";
     public static final String MULTIVALUED_HEADERS_SEPARATOR = ", ";

Added: james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/MessageProperty.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/MessageProperty.java?rev=1724386&view=auto
==============================================================================
--- james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/MessageProperty.java (added)
+++ james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/MessageProperty.java Wed Jan 13 10:12:10 2016
@@ -0,0 +1,64 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one   *
+ * or more contributor license agreements.  See the NOTICE file *
+ * distributed with this work for additional information        *
+ * regarding copyright ownership.  The ASF licenses this file   *
+ * to you under the Apache License, Version 2.0 (the            *
+ * "License"); you may not use this file except in compliance   *
+ * with the License.  You may obtain a copy of the License at   *
+ *                                                              *
+ *   http://www.apache.org/licenses/LICENSE-2.0                 *
+ *                                                              *
+ * Unless required by applicable law or agreed to in writing,   *
+ * software distributed under the License is distributed on an  *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
+ * KIND, either express or implied.  See the License for the    *
+ * specific language governing permissions and limitations      *
+ * under the License.                                           *
+ ****************************************************************/
+package org.apache.james.jmap.model;
+
+import com.google.common.collect.ImmutableSet;
+
+public enum MessageProperty implements Property {
+    id("id"),
+    blobId("blobId"),
+    threadId("threadId"),
+    mailboxIds("mailboxIds"),
+    inReplyToMessageId("inReplyToMessageId"),
+    isUnread("isUnread"),
+    isFlagged("isFlagged"),
+    isAnswered("isAnswered"),
+    isDraft("isDraft"),
+    hasAttachment("hasAttachment"),
+    headers("headers"),
+    from("from"),
+    to("to"),
+    cc("cc"),
+    bcc("bcc"),
+    replyTo("replyTo"),
+    subject("subject"),
+    date("date"),
+    size("size"),
+    preview("preview"),
+    textBody("textBody"),
+    htmlBody("htmlBody"),
+    attachments("attachments"),
+    attachedMessages("attachedMessages"),
+    body("body"),
+    headers_property("headers.property");
+    
+    private String property;
+
+    MessageProperty(String property) {
+        this.property = property;
+    }
+    
+    public String asFieldName() {
+        return property;
+    }
+    
+    public static ImmutableSet<MessageProperty> all() {
+        return ImmutableSet.copyOf(values());
+    }
+}

Modified: james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Property.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Property.java?rev=1724386&r1=1724385&r2=1724386&view=diff
==============================================================================
--- james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Property.java (original)
+++ james/project/trunk/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/Property.java Wed Jan 13 10:12:10 2016
@@ -18,47 +18,6 @@
  ****************************************************************/
 package org.apache.james.jmap.model;
 
-import com.google.common.collect.ImmutableList;
-
-public enum Property {
-    id("id"),
-    blobId("blobId"),
-    threadId("threadId"),
-    mailboxIds("mailboxIds"),
-    inReplyToMessageId("inReplyToMessageId"),
-    isUnread("isUnread"),
-    isFlagged("isFlagged"),
-    isAnswered("isAnswered"),
-    isDraft("isDraft"),
-    hasAttachment("hasAttachment"),
-    headers("headers"),
-    from("from"),
-    to("to"),
-    cc("cc"),
-    bcc("bcc"),
-    replyTo("replyTo"),
-    subject("subject"),
-    date("date"),
-    size("size"),
-    preview("preview"),
-    textBody("textBody"),
-    htmlBody("htmlBody"),
-    attachments("attachments"),
-    attachedMessages("attachedMessages"),
-    body("body"),
-    headers_property("headers.property");
-    
-    private String property;
-
-    private Property(String property) {
-        this.property = property;
-    }
-    
-    public String getProperty() {
-        return property;
-    }
-    
-    public static ImmutableList<Property> all() {
-        return ImmutableList.copyOf(values());
-    }
+public interface Property {
+    String asFieldName();
 }

Modified: james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/GetMessagesMethodTest.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/GetMessagesMethodTest.java?rev=1724386&r1=1724385&r2=1724386&view=diff
==============================================================================
--- james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/GetMessagesMethodTest.java (original)
+++ james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/GetMessagesMethodTest.java Wed Jan 13 10:12:10 2016
@@ -34,7 +34,7 @@ import org.apache.james.jmap.model.GetMe
 import org.apache.james.jmap.model.GetMessagesResponse;
 import org.apache.james.jmap.model.Message;
 import org.apache.james.jmap.model.MessageId;
-import org.apache.james.jmap.model.Property;
+import org.apache.james.jmap.model.MessageProperty;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageManager;
 import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
@@ -178,7 +178,7 @@ public class GetMessagesMethodTest {
         
         GetMessagesRequest request = GetMessagesRequest.builder()
                 .ids(new MessageId(ROBERT, inboxPath, message1Uid))
-                .properties(new Property[0])
+                .properties(new MessageProperty[0])
                 .build();
 
         GetMessagesMethod<InMemoryId> testee = new GetMessagesMethod<>(mailboxSessionMapperFactory, mailboxSessionMapperFactory);
@@ -203,7 +203,7 @@ public class GetMessagesMethodTest {
         
         GetMessagesRequest request = GetMessagesRequest.builder()
                 .ids(new MessageId(ROBERT, inboxPath, message1Uid))
-                .properties(Property.subject)
+                .properties(MessageProperty.subject)
                 .build();
 
         GetMessagesMethod<InMemoryId> testee = new GetMessagesMethod<>(mailboxSessionMapperFactory, mailboxSessionMapperFactory);

Modified: james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/JmapResponseWriterImplTest.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/JmapResponseWriterImplTest.java?rev=1724386&r1=1724385&r2=1724386&view=diff
==============================================================================
--- james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/JmapResponseWriterImplTest.java (original)
+++ james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/JmapResponseWriterImplTest.java Wed Jan 13 10:12:10 2016
@@ -21,18 +21,16 @@ package org.apache.james.jmap.methods;
 
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.tuple;
-import static org.assertj.core.groups.Tuple.*;
 
 import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import com.google.common.collect.Iterables;
 import org.apache.james.jmap.model.ClientId;
+import org.apache.james.jmap.model.Property;
 import org.apache.james.jmap.model.ProtocolRequest;
 import org.apache.james.jmap.model.ProtocolResponse;
-import org.assertj.core.groups.Tuple;
 import org.junit.Ignore;
 import org.junit.Test;
 
@@ -43,6 +41,7 @@ import com.fasterxml.jackson.databind.no
 import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.Iterables;
 
 public class JmapResponseWriterImplTest {
 
@@ -100,6 +99,7 @@ public class JmapResponseWriterImplTest
     public void formatMethodResponseShouldFilterFieldsWhenProperties() {
         ObjectResponseClass responseClass = new ObjectResponseClass();
         responseClass.list = ImmutableList.of(new ObjectResponseClass.Foo("id", "name"));
+        Property property = () -> "id";
 
         JmapResponseWriterImpl jmapResponseWriterImpl = new JmapResponseWriterImpl(ImmutableSet.of(new Jdk8Module()));
         List<ProtocolResponse> response = jmapResponseWriterImpl.formatMethodResponse(
@@ -107,7 +107,7 @@ public class JmapResponseWriterImplTest
                 .builder()
                 .responseName(Method.Response.name("unknownMethod"))
                 .clientId(ClientId.of("#1"))
-                .properties(ImmutableSet.of("id"))
+                .properties(ImmutableSet.of(property))
                 .response(responseClass)
                 .build()))
                 .collect(Collectors.toList());
@@ -124,6 +124,7 @@ public class JmapResponseWriterImplTest
     public void formatMethodResponseShouldNotFilterFieldsWhenSecondCallWithoutProperties() {
         ObjectResponseClass responseClass = new ObjectResponseClass();
         responseClass.list = ImmutableList.of(new ObjectResponseClass.Foo("id", "name"));
+        Property property = () -> "id";
 
         JmapResponseWriterImpl jmapResponseWriterImpl = new JmapResponseWriterImpl(ImmutableSet.of(new Jdk8Module()));
         @SuppressWarnings("unused")
@@ -132,7 +133,7 @@ public class JmapResponseWriterImplTest
                         .builder()
                         .responseName(Method.Response.name("unknownMethod"))
                         .clientId(ClientId.of("#1"))
-                        .properties(ImmutableSet.of("id"))
+                        .properties(ImmutableSet.of(property))
                         .response(responseClass)
                         .build()));
 
@@ -155,6 +156,8 @@ public class JmapResponseWriterImplTest
     public void formatMethodResponseShouldFilterRightFieldsForEachResponse() {
         ObjectResponseClass responseClass = new ObjectResponseClass();
         responseClass.list = ImmutableList.of(new ObjectResponseClass.Foo("id", "name"));
+        Property idProperty = () -> "id";
+        Property nameProperty = () -> "name";
 
         JmapResponseWriterImpl jmapResponseWriterImpl = new JmapResponseWriterImpl(ImmutableSet.of(new Jdk8Module()));
 
@@ -163,14 +166,14 @@ public class JmapResponseWriterImplTest
                             .builder()
                             .responseName(Method.Response.name("unknownMethod"))
                             .clientId(ClientId.of("#1"))
-                            .properties(ImmutableSet.of("id", "name"))
+                            .properties(ImmutableSet.of(idProperty, nameProperty))
                             .response(responseClass)
                             .build(),
                         JmapResponse
                             .builder()
                             .responseName(Method.Response.name("unknownMethod"))
                             .clientId(ClientId.of("#1"))
-                            .properties(ImmutableSet.of("id"))
+                            .properties(ImmutableSet.of(idProperty))
                             .response(responseClass)
                             .build()))
                 .collect(Collectors.toList());

Modified: james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/GetMessagesRequestTest.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/GetMessagesRequestTest.java?rev=1724386&r1=1724385&r2=1724386&view=diff
==============================================================================
--- james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/GetMessagesRequestTest.java (original)
+++ james/project/trunk/server/protocols/jmap/src/test/java/org/apache/james/jmap/model/GetMessagesRequestTest.java Wed Jan 13 10:12:10 2016
@@ -23,13 +23,13 @@ import static org.assertj.core.api.Asser
 
 import org.junit.Test;
 
-import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableSet;
 
 public class GetMessagesRequestTest {
 
     @Test
     public void shouldAllowOptionalAccountId() {
-        GetMessagesRequest result = GetMessagesRequest.builder().ids(MessageId.of("user-inbox-1")).properties(Property.id).build();
+        GetMessagesRequest result = GetMessagesRequest.builder().ids(MessageId.of("user-inbox-1")).properties(MessageProperty.id).build();
         assertThat(result).isNotNull();
         assertThat(result.getAccountId()).isEmpty();
     }
@@ -41,7 +41,7 @@ public class GetMessagesRequestTest {
 
     @Test
     public void shouldAllowEmptyMessagesList() {
-        GetMessagesRequest result = GetMessagesRequest.builder().accountId("accountId").ids().properties(Property.id).build();
+        GetMessagesRequest result = GetMessagesRequest.builder().accountId("accountId").ids().properties(MessageProperty.id).build();
         assertThat(result).isNotNull();
         assertThat(result.getIds()).isEmpty();
     }
@@ -55,8 +55,8 @@ public class GetMessagesRequestTest {
 
     @Test
     public void shouldAllowEmptyPropertyList() {
-        GetMessagesRequest result = GetMessagesRequest.builder().accountId("accountId").ids().properties(new Property[0]).build();
+        GetMessagesRequest result = GetMessagesRequest.builder().accountId("accountId").ids().properties(new MessageProperty[0]).build();
         assertThat(result).isNotNull();
-        assertThat(result.getProperties()).contains(ImmutableList.of());
+        assertThat(result.getProperties()).contains(ImmutableSet.of());
     }
 }



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