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 2018/01/17 13:28:12 UTC
[6/9] james-project git commit: JAMES-2286 check that store/retrieve
supports emojis
JAMES-2286 check that store/retrieve supports emojis
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/30f36888
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/30f36888
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/30f36888
Branch: refs/heads/master
Commit: 30f36888f668ecdb0390f5970e932847a48c0f8e
Parents: bf52fc4
Author: Matthieu Baechler <ma...@apache.org>
Authored: Tue Jan 16 16:32:56 2018 +0100
Committer: Matthieu Baechler <ma...@apache.org>
Committed: Tue Jan 16 16:34:47 2018 +0100
----------------------------------------------------------------------
.../apache/james/core/builder/MimeMessageBuilder.java | 5 +++--
.../james/mailrepository/MailRepositoryContract.java | 12 ++++++++++++
2 files changed, 15 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/30f36888/core/src/main/java/org/apache/james/core/builder/MimeMessageBuilder.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/james/core/builder/MimeMessageBuilder.java b/core/src/main/java/org/apache/james/core/builder/MimeMessageBuilder.java
index 1ca7380..7cf181d 100644
--- a/core/src/main/java/org/apache/james/core/builder/MimeMessageBuilder.java
+++ b/core/src/main/java/org/apache/james/core/builder/MimeMessageBuilder.java
@@ -50,6 +50,8 @@ import com.google.common.collect.ImmutableList;
public class MimeMessageBuilder {
+ public static final String DEFAULT_TEXT_PLAIN_UTF8_TYPE = "text/plain; charset=UTF-8";
+
public static class Header {
private final String name;
private final String value;
@@ -96,7 +98,6 @@ public class MimeMessageBuilder {
}
public static class BodyPartBuilder {
- public static final String DEFAULT_TEXT_PLAIN_UTF8_TYPE = "text/plain; charset=UTF-8";
public static final String DEFAULT_VALUE = "";
private Optional<String> cid = Optional.empty();
@@ -348,7 +349,7 @@ public class MimeMessageBuilder {
Preconditions.checkState(!(text.isPresent() && content.isPresent()), "Can not get at the same time a text and a content");
MimeMessage mimeMessage = new MimeMessage(Session.getInstance(new Properties()));
if (text.isPresent()) {
- mimeMessage.setContent(text.get(), textContentType.orElse("text/plain"));
+ mimeMessage.setContent(text.get(), textContentType.orElse(DEFAULT_TEXT_PLAIN_UTF8_TYPE));
}
if (content.isPresent()) {
mimeMessage.setContent(content.get());
http://git-wip-us.apache.org/repos/asf/james-project/blob/30f36888/server/mailrepository/mailrepository-api/src/test/java/org/apache/james/mailrepository/MailRepositoryContract.java
----------------------------------------------------------------------
diff --git a/server/mailrepository/mailrepository-api/src/test/java/org/apache/james/mailrepository/MailRepositoryContract.java b/server/mailrepository/mailrepository-api/src/test/java/org/apache/james/mailrepository/MailRepositoryContract.java
index 6afe6e7..7b56107 100644
--- a/server/mailrepository/mailrepository-api/src/test/java/org/apache/james/mailrepository/MailRepositoryContract.java
+++ b/server/mailrepository/mailrepository-api/src/test/java/org/apache/james/mailrepository/MailRepositoryContract.java
@@ -22,6 +22,7 @@ package org.apache.james.mailrepository;
import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.jupiter.api.Assertions.assertAll;
+import java.nio.charset.StandardCharsets;
import java.util.Date;
import java.util.List;
@@ -101,6 +102,17 @@ public interface MailRepositoryContract {
assertThat(testee.retrieve(key1)).satisfies(actual -> checkMailEquality(actual, mail));
}
+ @Test
+ default void retrieveShouldGetStoredEmojiMail() throws Exception {
+ MailRepository testee = retrieveRepository();
+ String key1 = "mail1";
+ Mail mail = createMail(key1, "my content contains 🐋");
+
+ testee.store(mail);
+
+ assertThat(testee.retrieve(key1).getMessage().getContent()).isEqualTo("my content contains 🐋");
+ }
+
@Test
default void retrieveShouldReturnAllMailProperties() throws Exception {
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org