This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 7f7da1e07cda9792579a5224c4b5998253465c86 Author: Benoit Tellier <btell...@linagora.com> AuthorDate: Mon Jan 20 15:07:12 2020 +0700 JAMES-2997 Renable MIMEMessageConverterTest --- .../draft/methods/MIMEMessageConverterTest.java | 186 ++++++++++++++------- 1 file changed, 130 insertions(+), 56 deletions(-) diff --git a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/methods/MIMEMessageConverterTest.java b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/methods/MIMEMessageConverterTest.java index 68f235b..8a8f83b 100644 --- a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/methods/MIMEMessageConverterTest.java +++ b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/methods/MIMEMessageConverterTest.java @@ -19,13 +19,61 @@ package org.apache.james.jmap.draft.methods; +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +import java.io.ByteArrayInputStream; +import java.nio.charset.StandardCharsets; +import java.sql.Date; +import java.time.Instant; +import java.time.ZoneId; +import java.time.ZonedDateTime; + +import org.apache.james.core.Username; +import org.apache.james.jmap.draft.methods.ValueWithId.MessageWithId; +import org.apache.james.jmap.draft.model.CreationMessage; +import org.apache.james.jmap.draft.model.CreationMessage.DraftEmailer; +import org.apache.james.jmap.draft.model.CreationMessageId; +import org.apache.james.mailbox.AttachmentContentLoader; +import org.apache.james.mailbox.MailboxSession; +import org.apache.james.mailbox.MailboxSessionUtil; +import org.apache.james.mailbox.model.AttachmentId; +import org.apache.james.mailbox.model.Cid; +import org.apache.james.mailbox.model.MessageAttachment; +import org.apache.james.mime4j.codec.EncoderUtil; +import org.apache.james.mime4j.codec.EncoderUtil.Usage; +import org.apache.james.mime4j.dom.Entity; +import org.apache.james.mime4j.dom.Message; +import org.apache.james.mime4j.dom.Multipart; +import org.apache.james.mime4j.dom.TextBody; +import org.apache.james.mime4j.dom.address.Mailbox; +import org.apache.james.mime4j.dom.field.ContentTypeField; +import org.apache.james.mime4j.message.BasicBodyFactory; +import org.apache.james.mime4j.stream.Field; +import org.assertj.core.data.Index; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + +import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableMap; + class MIMEMessageConverterTest { + MailboxSession session; + AttachmentContentLoader attachmentContentLoader; + + @BeforeEach + void setUp() { + session = MailboxSessionUtil.create(Username.of("bob")); + attachmentContentLoader = mock(AttachmentContentLoader.class); + } - /* @Test void convertToMimeShouldAddInReplyToHeaderWhenProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); String matchingMessageId = "unique-message-id"; CreationMessage messageHavingInReplyTo = CreationMessage.builder() @@ -47,7 +95,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldGenerateMessageId() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage message = CreationMessage.builder() .mailboxIds(ImmutableList.of("dead-beef-1337")) @@ -66,7 +114,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldGenerateMessageIdWhenSenderWithoutDomain() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage message = CreationMessage.builder() .from(DraftEmailer.builder().email("sender").build()) @@ -86,7 +134,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldGenerateMessageIdContainingSenderDomain() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage message = CreationMessage.builder() .from(DraftEmailer.builder().email("em...@domain.com").build()) @@ -107,7 +155,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldAddHeaderWhenProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage messageHavingInReplyTo = CreationMessage.builder() .from(DraftEmailer.builder().name("sender").build()) @@ -128,7 +176,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldAddHeadersWhenProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage messageHavingInReplyTo = CreationMessage.builder() .from(DraftEmailer.builder().name("sender").build()) @@ -151,7 +199,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldFilterGeneratedHeadersWhenProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); String joesEmail = "j...@example.com"; CreationMessage messageHavingInReplyTo = CreationMessage.builder() @@ -177,7 +225,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldFilterGeneratedHeadersRegardlessOfCaseWhenProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); String joesEmail = "j...@example.com"; CreationMessage messageHavingInReplyTo = CreationMessage.builder() @@ -203,7 +251,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldAddMultivaluedHeadersWhenProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage messageHavingInReplyTo = CreationMessage.builder() .from(DraftEmailer.builder().name("sender").build()) @@ -224,7 +272,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldFilterEmptyHeaderNames() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage messageHavingInReplyTo = CreationMessage.builder() .from(DraftEmailer.builder().name("joe").build()) @@ -244,7 +292,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldFilterWhiteSpacesOnlyHeaderNames() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage messageHavingInReplyTo = CreationMessage.builder() .from(DraftEmailer.builder().name("joe").build()) @@ -264,7 +312,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldThrowWhenMessageIsNull() { - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); assertThatThrownBy(() -> sut.convertToMime( new ValueWithId.CreationMessageEntry(CreationMessageId.of("any"), null), @@ -275,7 +323,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldSetBothFromAndSenderHeaders() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); String joesEmail = "j...@example.com"; CreationMessage testMessage = CreationMessage.builder() @@ -296,7 +344,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldSetCorrectLocalDate() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); Instant now = Instant.now(); ZonedDateTime messageDate = ZonedDateTime.ofInstant(now, ZoneId.systemDefault()); @@ -319,7 +367,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldSetQuotedPrintableContentTransferEncodingWhenText() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxId("dead-bada55") @@ -342,7 +390,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldSetTextBodyWhenProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); TextBody expected = new BasicBodyFactory().textBody("Hello all!", StandardCharsets.UTF_8); CreationMessage testMessage = CreationMessage.builder() @@ -363,7 +411,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldSetEmptyBodyWhenNoBodyProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); TextBody expected = new BasicBodyFactory().textBody("", StandardCharsets.UTF_8); CreationMessage testMessage = CreationMessage.builder() @@ -383,7 +431,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldSetHtmlBodyWhenProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); TextBody expected = new BasicBodyFactory().textBody("Hello <b>all</b>!", StandardCharsets.UTF_8); CreationMessage testMessage = CreationMessage.builder() @@ -404,7 +452,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldGenerateMultipartWhenHtmlBodyAndTextBodyProvided() throws Exception { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxId("dead-bada55") @@ -429,7 +477,7 @@ class MIMEMessageConverterTest { @Test void convertShouldGenerateExpectedMultipartWhenHtmlAndTextBodyProvided() throws Exception { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxId("dead-bada55") @@ -453,7 +501,7 @@ class MIMEMessageConverterTest { // When byte[] convert = sut.convert(new MessageWithId.CreationMessageEntry( - CreationMessageId.of("user|mailbox|1"), testMessage), ImmutableList.of()); + CreationMessageId.of("user|mailbox|1"), testMessage), ImmutableList.of(), session); // Then String actual = new String(convert, StandardCharsets.UTF_8); @@ -465,7 +513,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldSetMimeTypeWhenTextBody() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxId("dead-bada55") @@ -485,7 +533,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldSetMimeTypeWhenHtmlBody() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxId("dead-bada55") @@ -505,7 +553,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldSetEmptyHtmlBodyWhenProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); TextBody expected = new BasicBodyFactory().textBody("", StandardCharsets.UTF_8); CreationMessage testMessage = CreationMessage.builder() @@ -527,7 +575,7 @@ class MIMEMessageConverterTest { @Test void convertToMimeShouldSetEmptyTextBodyWhenProvided() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); TextBody expected = new BasicBodyFactory().textBody("", StandardCharsets.UTF_8); CreationMessage testMessage = CreationMessage.builder() @@ -550,9 +598,9 @@ class MIMEMessageConverterTest { class WithAttachments { @Test - void convertToMimeShouldAddAttachment() { + void convertToMimeShouldAddAttachment() throws Exception { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxId("dead-bada55") @@ -565,15 +613,18 @@ class MIMEMessageConverterTest { String expectedMimeType = "image/png"; String text = "123456"; TextBody expectedBody = new BasicBodyFactory().textBody(text.getBytes(), StandardCharsets.UTF_8); + AttachmentId blodId = AttachmentId.from("blodId"); MessageAttachment attachment = MessageAttachment.builder() .attachment(org.apache.james.mailbox.model.Attachment.builder() - .attachmentId(AttachmentId.from("blodId")) - .bytes(text.getBytes()) + .attachmentId(blodId) + .size(text.getBytes().length) .type(expectedMimeType) .build()) .cid(Cid.from(expectedCID)) .isInline(true) .build(); + when(attachmentContentLoader.load(attachment.getAttachment(), session)) + .thenReturn(new ByteArrayInputStream(text.getBytes())); // When Message result = sut.convertToMime(new ValueWithId.CreationMessageEntry( @@ -594,9 +645,9 @@ class MIMEMessageConverterTest { } @Test - void convertToMimeShouldAddAttachmentAndMultipartAlternativeWhenOneAttachementAndTextAndHtmlBody() { + void convertToMimeShouldAddAttachmentAndMultipartAlternativeWhenOneAttachementAndTextAndHtmlBody() throws Exception { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxId("dead-bada55") @@ -615,12 +666,14 @@ class MIMEMessageConverterTest { MessageAttachment attachment = MessageAttachment.builder() .attachment(org.apache.james.mailbox.model.Attachment.builder() .attachmentId(AttachmentId.from("blodId")) - .bytes(text.getBytes()) + .size(text.getBytes().length) .type(expectedMimeType) .build()) .cid(Cid.from(expectedCID)) .isInline(true) .build(); + when(attachmentContentLoader.load(attachment.getAttachment(), session)) + .thenReturn(new ByteArrayInputStream(text.getBytes())); // When Message result = sut.convertToMime(new ValueWithId.CreationMessageEntry( @@ -652,7 +705,7 @@ class MIMEMessageConverterTest { @Test void convertShouldEncodeWhenNonASCIICharacters() { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxId("dead-bada55") @@ -664,7 +717,7 @@ class MIMEMessageConverterTest { // When ImmutableList<MessageAttachment> attachments = ImmutableList.of(); byte[] convert = sut.convert(new ValueWithId.CreationMessageEntry( - CreationMessageId.of("user|mailbox|1"), testMessage), attachments); + CreationMessageId.of("user|mailbox|1"), testMessage), attachments, session); String expectedEncodedContent = "Some non-ASCII characters: =C3=A1=C3=84=C3=8E=C3=9F=C3=BF"; @@ -674,9 +727,9 @@ class MIMEMessageConverterTest { } @Test - void convertToMimeShouldAddAttachmentAndContainsIndicationAboutTheWayToEncodeFilenamesAttachmentInTheInputStreamWhenSending() { + void convertToMimeShouldAddAttachmentAndContainsIndicationAboutTheWayToEncodeFilenamesAttachmentInTheInputStreamWhenSending() throws Exception { // Given - MIMEMessageConverter sut = new MIMEMessageConverter(); + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxIds(ImmutableList.of("dead-bada55")) @@ -694,12 +747,15 @@ class MIMEMessageConverterTest { .name(name) .attachment(org.apache.james.mailbox.model.Attachment.builder() .attachmentId(AttachmentId.from("blodId")) - .bytes(text.getBytes()) + .size(text.getBytes().length) .type(expectedMimeType) .build()) .cid(Cid.from(expectedCID)) .isInline(true) .build(); + when(attachmentContentLoader.load(attachment.getAttachment(), session)) + .thenReturn(new ByteArrayInputStream(text.getBytes())); + // When Message result = sut.convertToMime(new ValueWithId.CreationMessageEntry( @@ -715,8 +771,8 @@ class MIMEMessageConverterTest { @Test - void convertToMimeShouldHaveMixedMultipart() { - MIMEMessageConverter sut = new MIMEMessageConverter(); + void convertToMimeShouldHaveMixedMultipart() throws Exception { + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxIds(ImmutableList.of("dead-bada55")) @@ -725,16 +781,19 @@ class MIMEMessageConverterTest { .htmlBody("Hello <b>all<b>!") .build(); + String text = "123456"; MessageAttachment attachment = MessageAttachment.builder() .name("ديناصور.png") .attachment(org.apache.james.mailbox.model.Attachment.builder() .attachmentId(AttachmentId.from("blodId")) - .bytes("123456".getBytes()) + .size(text.getBytes().length) .type("image/png") .build()) .cid(Cid.from("cid")) .isInline(false) .build(); + when(attachmentContentLoader.load(attachment.getAttachment(), session)) + .thenReturn(new ByteArrayInputStream(text.getBytes())); Message result = sut.convertToMime(new ValueWithId.CreationMessageEntry( CreationMessageId.of("user|mailbox|1"), testMessage), ImmutableList.of(attachment), session); @@ -745,8 +804,8 @@ class MIMEMessageConverterTest { } @Test - void convertToMimeShouldNotHaveInnerMultipartWhenNoInline() { - MIMEMessageConverter sut = new MIMEMessageConverter(); + void convertToMimeShouldNotHaveInnerMultipartWhenNoInline() throws Exception { + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxIds(ImmutableList.of("dead-bada55")) @@ -755,16 +814,19 @@ class MIMEMessageConverterTest { .htmlBody("Hello <b>all<b>!") .build(); + String text = "123456"; MessageAttachment attachment = MessageAttachment.builder() .name("ديناصور.png") .attachment(org.apache.james.mailbox.model.Attachment.builder() .attachmentId(AttachmentId.from("blodId")) - .bytes("123456".getBytes()) + .size(text.getBytes().length) .type("image/png") .build()) .cid(Cid.from("cid")) .isInline(false) .build(); + when(attachmentContentLoader.load(attachment.getAttachment(), session)) + .thenReturn(new ByteArrayInputStream(text.getBytes())); Message result = sut.convertToMime(new ValueWithId.CreationMessageEntry( CreationMessageId.of("user|mailbox|1"), testMessage), ImmutableList.of(attachment), session); @@ -775,8 +837,8 @@ class MIMEMessageConverterTest { } @Test - void convertToMimeShouldHaveChildrenAttachmentParts() { - MIMEMessageConverter sut = new MIMEMessageConverter(); + void convertToMimeShouldHaveChildrenAttachmentParts() throws Exception { + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxIds(ImmutableList.of("dead-bada55")) @@ -785,16 +847,19 @@ class MIMEMessageConverterTest { .htmlBody("Hello <b>all<b>!") .build(); + String text = "123456"; MessageAttachment attachment = MessageAttachment.builder() .name("ديناصور.png") .attachment(org.apache.james.mailbox.model.Attachment.builder() .attachmentId(AttachmentId.from("blodId")) - .bytes("123456".getBytes()) + .size(text.getBytes().length) .type("image/png") .build()) .cid(Cid.from("cid")) .isInline(false) .build(); + when(attachmentContentLoader.load(attachment.getAttachment(), session)) + .thenReturn(new ByteArrayInputStream(text.getBytes())); Message result = sut.convertToMime(new ValueWithId.CreationMessageEntry( CreationMessageId.of("user|mailbox|1"), testMessage), ImmutableList.of(attachment), session); @@ -806,8 +871,8 @@ class MIMEMessageConverterTest { } @Test - void convertToMimeShouldHaveChildMultipartWhenOnlyInline() { - MIMEMessageConverter sut = new MIMEMessageConverter(); + void convertToMimeShouldHaveChildMultipartWhenOnlyInline() throws Exception { + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxIds(ImmutableList.of("dead-bada55")) @@ -817,16 +882,19 @@ class MIMEMessageConverterTest { .build(); String name = "ديناصور.png"; + String text = "123456"; MessageAttachment attachment = MessageAttachment.builder() .name(name) .attachment(org.apache.james.mailbox.model.Attachment.builder() .attachmentId(AttachmentId.from("blodId")) - .bytes("123456".getBytes()) + .size(text.getBytes().length) .type("image/png") .build()) .cid(Cid.from("cid")) .isInline(true) .build(); + when(attachmentContentLoader.load(attachment.getAttachment(), session)) + .thenReturn(new ByteArrayInputStream(text.getBytes())); Message result = sut.convertToMime(new ValueWithId.CreationMessageEntry( CreationMessageId.of("user|mailbox|1"), testMessage), ImmutableList.of(attachment), session); @@ -841,8 +909,8 @@ class MIMEMessageConverterTest { } @Test - void convertToMimeShouldHaveChildMultipartWhenBothInlinesAndAttachments() { - MIMEMessageConverter sut = new MIMEMessageConverter(); + void convertToMimeShouldHaveChildMultipartWhenBothInlinesAndAttachments() throws Exception { + MIMEMessageConverter sut = new MIMEMessageConverter(attachmentContentLoader); CreationMessage testMessage = CreationMessage.builder() .mailboxIds(ImmutableList.of("dead-bada55")) @@ -851,27 +919,35 @@ class MIMEMessageConverterTest { .htmlBody("Hello <b>all<b>!") .build(); + String text = "inline data"; MessageAttachment inline = MessageAttachment.builder() .name("ديناصور.png") .attachment(org.apache.james.mailbox.model.Attachment.builder() .attachmentId(AttachmentId.from("blodId")) - .bytes("inline data".getBytes()) + .size(text.getBytes().length) .type("image/png") .build()) .cid(Cid.from("cid")) .isInline(true) .build(); + when(attachmentContentLoader.load(inline.getAttachment(), session)) + .thenReturn(new ByteArrayInputStream(text.getBytes())); + + String text2 = "attachment data"; MessageAttachment attachment = MessageAttachment.builder() .name("att.pdf") .attachment(org.apache.james.mailbox.model.Attachment.builder() .attachmentId(AttachmentId.from("blodId2")) - .bytes("attachment data".getBytes()) + .size(text2.getBytes().length) .type("image/png") .build()) .cid(Cid.from("cid2")) .isInline(false) .build(); + when(attachmentContentLoader.load(attachment.getAttachment(), session)) + .thenReturn(new ByteArrayInputStream(text2.getBytes())); + Message result = sut.convertToMime(new ValueWithId.CreationMessageEntry( CreationMessageId.of("user|mailbox|1"), testMessage), ImmutableList.of(inline, attachment), session); @@ -895,6 +971,4 @@ class MIMEMessageConverterTest { return ((ContentTypeField) attachmentPart.getHeader().getField("Content-Type")).getParameter("name"); } } - - */ } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org