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 ro...@apache.org on 2020/06/08 13:16:03 UTC
[james-project] 09/30: JAMES-3179 Fix MessageContent hashCode
This is an automated email from the ASF dual-hosted git repository.
rouazana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
commit c3ee324cdada5efaad20bf4de0980b60c90283a8
Author: Gautier DI FOLCO <gd...@linagora.com>
AuthorDate: Tue May 12 15:34:13 2020 +0200
JAMES-3179 Fix MessageContent hashCode
---
.../java/org/apache/james/util/mime/MessageContentExtractor.java | 7 ++++++-
.../org/apache/james/util/mime/MessageContentExtractorTest.java | 7 +++++++
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/server/container/util/src/main/java/org/apache/james/util/mime/MessageContentExtractor.java b/server/container/util/src/main/java/org/apache/james/util/mime/MessageContentExtractor.java
index 454d3d0..5a3292a 100644
--- a/server/container/util/src/main/java/org/apache/james/util/mime/MessageContentExtractor.java
+++ b/server/container/util/src/main/java/org/apache/james/util/mime/MessageContentExtractor.java
@@ -179,7 +179,7 @@ public class MessageContentExtractor {
&& part.getHeader().getField(CONTENT_ID) == null;
}
- public static class MessageContent {
+ public static final class MessageContent {
private final Optional<String> textBody;
private final Optional<String> htmlBody;
@@ -230,6 +230,11 @@ public class MessageContentExtractor {
}
@Override
+ public int hashCode() {
+ return Objects.hash(textBody, htmlBody);
+ }
+
+ @Override
public boolean equals(Object other) {
if (!(other instanceof MessageContent)) {
return false;
diff --git a/server/container/util/src/test/java/org/apache/james/util/mime/MessageContentExtractorTest.java b/server/container/util/src/test/java/org/apache/james/util/mime/MessageContentExtractorTest.java
index e622d80..65ab84d 100644
--- a/server/container/util/src/test/java/org/apache/james/util/mime/MessageContentExtractorTest.java
+++ b/server/container/util/src/test/java/org/apache/james/util/mime/MessageContentExtractorTest.java
@@ -41,6 +41,8 @@ import org.apache.james.util.mime.MessageContentExtractor.MessageContent;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import nl.jqno.equalsverifier.EqualsVerifier;
+
class MessageContentExtractorTest {
private static final String BINARY_CONTENT = "binary";
private static final String TEXT_CONTENT = "text content";
@@ -91,6 +93,11 @@ class MessageContentExtractorTest {
}
@Test
+ void shouldRespectBeanContract() {
+ EqualsVerifier.forClass(MessageContent.class).verify();
+ }
+
+ @Test
void extractShouldReturnEmptyWhenBinaryContentOnly() throws IOException {
Message message = Message.Builder.of()
.setBody(BasicBodyFactory.INSTANCE.binaryBody(BINARY_CONTENT, StandardCharsets.UTF_8))
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org