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 ma...@apache.org on 2018/07/27 08:19:14 UTC
[3/6] james-project git commit: JAMES-2479 upgrade jackson library
JAMES-2479 upgrade jackson library
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/b657d252
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/b657d252
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/b657d252
Branch: refs/heads/master
Commit: b657d2526a4a6c61972b1ff23eaf5ea040c00541
Parents: 00330ba
Author: Matthieu Baechler <ma...@apache.org>
Authored: Wed Jul 18 17:23:57 2018 +0200
Committer: Matthieu Baechler <ma...@apache.org>
Committed: Fri Jul 27 10:16:53 2018 +0200
----------------------------------------------------------------------
...icSearchListeningMessageSearchIndexTest.java | 6 +-
.../mailbox/tika/TikaTextExtractorTest.java | 41 +++--------
.../mailets/ICALToJsonAttributeTest.java | 7 +-
.../transport/mailets/ContactExtractorTest.java | 4 +-
pom.xml | 77 ++++++++++++++++++--
.../integration/GetMailboxesMethodTest.java | 5 +-
.../integration/SetMessagesMethodTest.java | 4 +-
.../cucumber/GetMessagesMethodStepdefs.java | 5 --
.../test/resources/cucumber/GetMessages.feature | 1 -
.../jmap/json/MultipleClassesDeserializer.java | 2 +-
.../UpdateMessagePatchValidatorTest.java | 4 +-
.../james/webadmin/routes/ErrorRoutesTest.java | 3 +-
.../routes/DLPConfigurationRoutesTest.java | 5 +-
13 files changed, 105 insertions(+), 59 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
index 280f476..62eb3ee 100644
--- a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
+++ b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMessageSearchIndexTest.java
@@ -53,6 +53,7 @@ import org.junit.Before;
import org.junit.Test;
import com.fasterxml.jackson.core.JsonGenerationException;
+import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Lists;
@@ -146,9 +147,10 @@ public class ElasticSearchListeningMessageSearchIndexTest {
when(messageToElasticSearchJson.convertToJson(eq(message), eq(users)))
.thenThrow(JsonProcessingException.class);
-
+
+ JsonGenerator jsonGenerator = null;
when(messageToElasticSearchJson.convertToJsonWithoutAttachment(eq(message), eq(users)))
- .thenThrow(new JsonGenerationException("expected error"));
+ .thenThrow(new JsonGenerationException("expected error", jsonGenerator));
//When
testee.add(session, mailbox, message);
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/mailbox/tika/src/test/java/org/apache/james/mailbox/tika/TikaTextExtractorTest.java
----------------------------------------------------------------------
diff --git a/mailbox/tika/src/test/java/org/apache/james/mailbox/tika/TikaTextExtractorTest.java b/mailbox/tika/src/test/java/org/apache/james/mailbox/tika/TikaTextExtractorTest.java
index a78821f..11959d6 100644
--- a/mailbox/tika/src/test/java/org/apache/james/mailbox/tika/TikaTextExtractorTest.java
+++ b/mailbox/tika/src/test/java/org/apache/james/mailbox/tika/TikaTextExtractorTest.java
@@ -20,8 +20,6 @@
package org.apache.james.mailbox.tika;
import static org.assertj.core.api.Assertions.assertThat;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
@@ -40,9 +38,9 @@ import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.node.JsonNodeType;
-import com.google.common.collect.ImmutableList;
+import com.fasterxml.jackson.databind.node.ArrayNode;
+import com.fasterxml.jackson.databind.node.JsonNodeFactory;
+import com.fasterxml.jackson.databind.node.TextNode;
public class TikaTextExtractorTest {
@@ -198,38 +196,21 @@ public class TikaTextExtractorTest {
@Test
public void asListOfStringShouldReturnASingletonWhenOneElement() {
- JsonNode jsonNode = mock(JsonNode.class);
- when(jsonNode.getNodeType())
- .thenReturn(JsonNodeType.STRING);
- String expectedContent = "text";
- when(jsonNode.asText())
- .thenReturn(expectedContent);
-
ContentAndMetadataDeserializer deserializer = new TikaTextExtractor.ContentAndMetadataDeserializer();
- List<String> listOfString = deserializer.asListOfString(jsonNode);
+ List<String> listOfString = deserializer.asListOfString(TextNode.valueOf("text"));
- assertThat(listOfString).containsOnly(expectedContent);
+ assertThat(listOfString).containsOnly("text");
}
@Test
public void asListOfStringShouldReturnAListWhenMultipleElements() {
- JsonNode mainNode = mock(JsonNode.class);
- when(mainNode.getNodeType())
- .thenReturn(JsonNodeType.ARRAY);
- JsonNode firstNode = mock(JsonNode.class);
- when(firstNode.asText())
- .thenReturn("first");
- JsonNode secondNode = mock(JsonNode.class);
- when(secondNode.asText())
- .thenReturn("second");
- JsonNode thirdNode = mock(JsonNode.class);
- when(thirdNode.asText())
- .thenReturn("third");
- when(mainNode.elements())
- .thenReturn(ImmutableList.of(firstNode, secondNode, thirdNode).iterator());
-
+ ArrayNode jsonArray = new ArrayNode(JsonNodeFactory.instance)
+ .add("first")
+ .add("second")
+ .add("third");
+
ContentAndMetadataDeserializer deserializer = new TikaTextExtractor.ContentAndMetadataDeserializer();
- List<String> listOfString = deserializer.asListOfString(mainNode);
+ List<String> listOfString = deserializer.asListOfString(jsonArray);
assertThat(listOfString).containsOnly("first", "second", "third");
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/mailet/icalendar/src/test/java/org/apache/james/transport/mailets/ICALToJsonAttributeTest.java
----------------------------------------------------------------------
diff --git a/mailet/icalendar/src/test/java/org/apache/james/transport/mailets/ICALToJsonAttributeTest.java b/mailet/icalendar/src/test/java/org/apache/james/transport/mailets/ICALToJsonAttributeTest.java
index c0232de..b9fc591 100644
--- a/mailet/icalendar/src/test/java/org/apache/james/transport/mailets/ICALToJsonAttributeTest.java
+++ b/mailet/icalendar/src/test/java/org/apache/james/transport/mailets/ICALToJsonAttributeTest.java
@@ -23,7 +23,6 @@ import static net.javacrumbs.jsonunit.fluent.JsonFluentAssert.assertThatJson;
import static org.assertj.core.api.Assertions.assertThat;
import java.io.ByteArrayInputStream;
-import java.io.UnsupportedEncodingException;
import java.nio.charset.StandardCharsets;
import java.util.List;
import java.util.Map;
@@ -44,7 +43,7 @@ import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
-import com.fasterxml.jackson.core.io.JsonStringEncoder;
+import com.fasterxml.jackson.core.util.BufferRecyclers;
import com.google.common.collect.ImmutableMap;
import net.fortuna.ical4j.data.CalendarBuilder;
import net.fortuna.ical4j.model.Calendar;
@@ -264,8 +263,8 @@ public class ICALToJsonAttributeTest {
"}");
}
- private String toJsonValue(byte[] ics) throws UnsupportedEncodingException {
- return new String(JsonStringEncoder.getInstance().quoteAsUTF8(new String(ics, StandardCharsets.UTF_8)), StandardCharsets.UTF_8);
+ private String toJsonValue(byte[] ics) {
+ return new String(BufferRecyclers.getJsonStringEncoder().quoteAsUTF8(new String(ics, StandardCharsets.UTF_8)), StandardCharsets.UTF_8);
}
@SuppressWarnings("unchecked")
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/mailet/standard/src/test/java/org/apache/james/transport/mailets/ContactExtractorTest.java
----------------------------------------------------------------------
diff --git a/mailet/standard/src/test/java/org/apache/james/transport/mailets/ContactExtractorTest.java b/mailet/standard/src/test/java/org/apache/james/transport/mailets/ContactExtractorTest.java
index dc33e0b..b328e70 100644
--- a/mailet/standard/src/test/java/org/apache/james/transport/mailets/ContactExtractorTest.java
+++ b/mailet/standard/src/test/java/org/apache/james/transport/mailets/ContactExtractorTest.java
@@ -39,6 +39,7 @@ import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import com.fasterxml.jackson.core.JsonGenerationException;
+import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.ObjectMapper;
public class ContactExtractorTest {
@@ -92,8 +93,9 @@ public class ContactExtractorTest {
.build();
ObjectMapper objectMapper = mock(ObjectMapper.class);
+ JsonGenerator jsonGenerator = null;
when(objectMapper.writeValueAsString(any(ContactExtractor.ExtractedContacts.class)))
- .thenThrow(new JsonGenerationException(""));
+ .thenThrow(new JsonGenerationException("", jsonGenerator));
mailet.init(mailetConfig);
mailet.objectMapper = objectMapper;
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 8b17152..0ed2927 100644
--- a/pom.xml
+++ b/pom.xml
@@ -629,7 +629,6 @@
<karaf.version>2.3.0</karaf.version>
<karaf.tooling.exam.container.version>2.3.0</karaf.tooling.exam.container.version>
<pax-logging-api.version>1.6.4</pax-logging-api.version>
- <jackson-data.version>2.6.3</jackson-data.version>
<jetty.version>9.4.11.v20180605</jetty.version>
<assertj-guava.version>3.1.0</assertj-guava.version>
<testcontainers.version>1.8.1</testcontainers.version>
@@ -661,10 +660,9 @@
<geronimo-activation-spec.version>1.1</geronimo-activation-spec.version>
<mockito-core.version>1.9.0</mockito-core.version>
<jasypt.version>1.9.2</jasypt.version>
- <jackson-databinding.version>2.6.3</jackson-databinding.version>
<guice.version>4.1.0</guice.version>
<jackrabbit-core.version>2.5.2</jackrabbit-core.version>
-
+ <jackson1.version>1.9.2</jackson1.version>
<logback.version>1.1.11</logback.version>
</properties>
@@ -1601,23 +1599,68 @@
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-core</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>${jackson-data.version}</version>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-cbor</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-smile</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-xml</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-yaml</artifactId>
+ <version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-guava</artifactId>
- <version>${jackson-databinding.version}</version>
+ <version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jdk8</artifactId>
- <version>${jackson-databinding.version}</version>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.datatype</groupId>
+ <artifactId>jackson-datatype-joda</artifactId>
+ <version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
- <version>${jackson-databinding.version}</version>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.jaxrs</groupId>
+ <artifactId>jackson-jaxrs-json-provider</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.module</groupId>
+ <artifactId>jackson-module-afterburner</artifactId>
+ <version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.github.dpaukov</groupId>
@@ -2227,6 +2270,26 @@
<version>1.60</version>
</dependency>
<dependency>
+ <groupId>org.codehaus.jackson</groupId>
+ <artifactId>jackson-core-asl</artifactId>
+ <version>${jackson1.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.jackson</groupId>
+ <artifactId>jackson-jaxrs</artifactId>
+ <version>${jackson1.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.jackson</groupId>
+ <artifactId>jackson-mapper-asl</artifactId>
+ <version>${jackson1.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.jackson</groupId>
+ <artifactId>jackson-xc</artifactId>
+ <version>${jackson1.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-http</artifactId>
<version>${jetty.version}</version>
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/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 05e3d45..4315648 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
@@ -34,6 +34,7 @@ import static org.apache.james.jmap.TestingConstants.NAME;
import static org.apache.james.jmap.TestingConstants.SECOND_MAILBOX;
import static org.apache.james.jmap.TestingConstants.jmapRequestSpecBuilder;
import static org.assertj.core.api.Assertions.assertThat;
+import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.empty;
import static org.hamcrest.Matchers.equalTo;
import static org.hamcrest.Matchers.hasEntry;
@@ -339,8 +340,8 @@ public abstract class GetMailboxesMethodTest {
.statusCode(200)
.body(NAME, equalTo("error"))
.body(ARGUMENTS + ".type", equalTo("invalidArguments"))
- .body(ARGUMENTS + ".description", equalTo("Can not deserialize instance of java.util.ArrayList out of VALUE_TRUE token\n"
- + " at [Source: {\"ids\":true}; line: 1, column: 2] (through reference chain: org.apache.james.jmap.model.Builder[\"ids\"])"));
+ .body(ARGUMENTS + ".description", containsString("Cannot deserialize instance of `java.util.ArrayList` out of VALUE_TRUE token"))
+ .body(ARGUMENTS + ".description", containsString("{\"ids\":true}"));
}
@Test
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/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 980c2c8..43be5d0 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
@@ -830,8 +830,8 @@ public abstract class SetMessagesMethodTest {
.body(NOT_UPDATED, hasKey(messageId))
.body(NOT_UPDATED + "[\"" + messageId + "\"].type", equalTo("invalidProperties"))
.body(NOT_UPDATED + "[\"" + messageId + "\"].properties[0]", equalTo("isUnread"))
- .body(NOT_UPDATED + "[\"" + messageId + "\"].description", equalTo("isUnread: Can not construct instance of java.lang.Boolean from String value '123': only \"true\" or \"false\" recognized\n" +
- " at [Source: {\"isUnread\":\"123\"}; line: 1, column: 2] (through reference chain: org.apache.james.jmap.model.Builder[\"isUnread\"])"))
+ .body(NOT_UPDATED + "[\"" + messageId + "\"].description", containsString("isUnread: Cannot deserialize value of type `java.lang.Boolean` from String \"123\": only \"true\" or \"false\" recognized"))
+ .body(NOT_UPDATED + "[\"" + messageId + "\"].description", containsString("{\"isUnread\":\"123\"}"))
.body(ARGUMENTS + ".updated", hasSize(0));
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/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 e2bc4ca..efc15e6 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
@@ -536,11 +536,6 @@ public class GetMessagesMethodStepdefs {
assertThat(httpClient.jsonPath.<List<String>>read(ARGUMENTS + ".list")).isEmpty();
}
- @Then("^the description is \"(.*?)\"$")
- public void assertDescription(String description) {
- assertThat(httpClient.jsonPath.<String>read(ARGUMENTS + ".description")).isEqualTo(description);
- }
-
@Then("^the notFound list should contain \"([^\"]*)\"$")
public void assertNotFoundListContains(String id) {
MessageId messageId = messageIdStepdefs.getMessageId(id);
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/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 8237ade..828f068 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
@@ -47,7 +47,6 @@ Feature: GetMessages method
Scenario: Retrieving messages with invalid argument should return an InvalidArguments error
When "alice@domain.tld" ask for messages using invalid argument
Then an error of type "invalidArguments" is returned
- And the description is "N/A (through reference chain: org.apache.james.jmap.model.Builder["ids"])"
Scenario: Retrieving messages should return empty list when no message
When "alice@domain.tld" ask for messages
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/server/protocols/jmap/src/main/java/org/apache/james/jmap/json/MultipleClassesDeserializer.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/json/MultipleClassesDeserializer.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/json/MultipleClassesDeserializer.java
index d06f448..f724164 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/json/MultipleClassesDeserializer.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/json/MultipleClassesDeserializer.java
@@ -48,7 +48,7 @@ public class MultipleClassesDeserializer extends StdDeserializer<Object> {
.filter(req -> ! (root.at(req.getKey()).isMissingNode()))
.map(x -> readValue(mapper, root, x.getValue()))
.findFirst()
- .orElseThrow(() -> new JsonMappingException("Can't map request to a known registered class"));
+ .orElseThrow(() -> JsonMappingException.from(ctxt, "Can't map request to a known registered class"));
}
private Object readValue(ObjectMapper mapper, JsonNode root, Class<?> clazz) {
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/UpdateMessagePatchValidatorTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/UpdateMessagePatchValidatorTest.java b/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/UpdateMessagePatchValidatorTest.java
index db8d8d0..c0c703e 100644
--- a/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/UpdateMessagePatchValidatorTest.java
+++ b/server/protocols/jmap/src/test/java/org/apache/james/jmap/methods/UpdateMessagePatchValidatorTest.java
@@ -33,6 +33,7 @@ import org.apache.james.jmap.model.UpdateMessagePatch;
import org.junit.Before;
import org.junit.Test;
+import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
@@ -80,8 +81,9 @@ public class UpdateMessagePatchValidatorTest {
ObjectNode emptyRootNode = new ObjectMapper().createObjectNode();
ObjectMapper mapper = mock(ObjectMapper.class);
+ JsonGenerator jsonGenerator = null;
when(mapper.readValue(anyString(), eq(UpdateMessagePatch.class)))
- .thenThrow(new JsonMappingException("Exception when parsing"));
+ .thenThrow(JsonMappingException.from(jsonGenerator, "Exception when parsing"));
when(objectMapperFactory.forParsing())
.thenReturn(mapper);
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/routes/ErrorRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/routes/ErrorRoutesTest.java b/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/routes/ErrorRoutesTest.java
index 943e15c..94993e3 100644
--- a/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/routes/ErrorRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/routes/ErrorRoutesTest.java
@@ -28,6 +28,7 @@ import static org.apache.james.webadmin.utils.ErrorResponder.ErrorType.SERVER_ER
import static org.eclipse.jetty.http.HttpStatus.BAD_REQUEST_400;
import static org.eclipse.jetty.http.HttpStatus.INTERNAL_SERVER_ERROR_500;
import static org.eclipse.jetty.http.HttpStatus.NOT_FOUND_404;
+import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.equalTo;
import org.apache.james.metrics.api.NoopMetricFactory;
@@ -95,6 +96,6 @@ public class ErrorRoutesTest {
.body("statusCode", equalTo(BAD_REQUEST_400))
.body("type", equalTo(INVALID_ARGUMENT.getType()))
.body("message", equalTo("JSON payload of the request is not valid"))
- .body("details", equalTo("Unrecognized token 'a': was expecting ('true', 'false' or 'null')\n at [Source: a non valid JSON; line: 1, column: 2]"));
+ .body("details", containsString("Unrecognized token 'a': was expecting ('true', 'false' or 'null')"));
}
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/b657d252/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DLPConfigurationRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DLPConfigurationRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DLPConfigurationRoutesTest.java
index b1e51a6..62013c9 100644
--- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DLPConfigurationRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DLPConfigurationRoutesTest.java
@@ -26,6 +26,7 @@ import static io.restassured.RestAssured.with;
import static net.javacrumbs.jsonunit.fluent.JsonFluentAssert.assertThatJson;
import static org.apache.james.webadmin.Constants.JSON_CONTENT_TYPE;
import static org.apache.james.webadmin.WebAdminServer.NO_CONFIGURATION;
+import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.is;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.mock;
@@ -239,7 +240,7 @@ class DLPConfigurationRoutesTest {
.body("statusCode", is(400))
.body("type", is("InvalidArgument"))
.body("message", is("JSON payload of the request is not valid"))
- .body("details", is("Instantiation of [simple type, class org.apache.james.webadmin.dto.DLPConfigurationItemDTO] value failed: 'id' is mandatory (through reference chain: org.apache.james.webadmin.dto.DLPConfigurationDTO[\"rules\"])"));
+ .body("details", containsString("'id' is mandatory"));
}
@Test
@@ -263,7 +264,7 @@ class DLPConfigurationRoutesTest {
.body("statusCode", is(400))
.body("type", is("InvalidArgument"))
.body("message", is("JSON payload of the request is not valid"))
- .body("details", is("Instantiation of [simple type, class org.apache.james.webadmin.dto.DLPConfigurationItemDTO] value failed: 'expression' is mandatory (through reference chain: org.apache.james.webadmin.dto.DLPConfigurationDTO[\"rules\"])"));
+ .body("details", containsString("'expression' is mandatory"));
}
@Test
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org