Search in sources :

Example 96 with BodyPart

use of com.fsck.k9.mail.BodyPart in project k-9 by k9mail.

the class MessageCryptoStructureDetectorTest method findPrimaryCryptoPart_withMultipartAlternativeContainingPgpInline.

@Test
public void findPrimaryCryptoPart_withMultipartAlternativeContainingPgpInline() throws Exception {
    List<Part> outputExtraParts = new ArrayList<>();
    BodyPart pgpInlinePart = bodypart("text/plain", PGP_INLINE_DATA);
    Message message = messageFromBody(multipart("alternative", pgpInlinePart, bodypart("text/html")));
    Part cryptoPart = MessageCryptoStructureDetector.findPrimaryEncryptedOrSignedPart(message, outputExtraParts);
    assertSame(pgpInlinePart, cryptoPart);
}
Also used : BodyPart(com.fsck.k9.mail.BodyPart) MimeMessage(com.fsck.k9.mail.internet.MimeMessage) Message(com.fsck.k9.mail.Message) BodyPart(com.fsck.k9.mail.BodyPart) Part(com.fsck.k9.mail.Part) ArrayList(java.util.ArrayList) Test(org.junit.Test)

Example 97 with BodyPart

use of com.fsck.k9.mail.BodyPart in project k-9 by k9mail.

the class MessageCryptoStructureDetectorTest method findPrimaryCryptoPart_withMultipartMixedContainingPgpInline.

@Test
public void findPrimaryCryptoPart_withMultipartMixedContainingPgpInline() throws Exception {
    List<Part> outputExtraParts = new ArrayList<>();
    BodyPart pgpInlinePart = bodypart("text/plain", PGP_INLINE_DATA);
    Message message = messageFromBody(multipart("mixed", pgpInlinePart, bodypart("application/octet-stream")));
    Part cryptoPart = MessageCryptoStructureDetector.findPrimaryEncryptedOrSignedPart(message, outputExtraParts);
    assertSame(pgpInlinePart, cryptoPart);
}
Also used : BodyPart(com.fsck.k9.mail.BodyPart) MimeMessage(com.fsck.k9.mail.internet.MimeMessage) Message(com.fsck.k9.mail.Message) BodyPart(com.fsck.k9.mail.BodyPart) Part(com.fsck.k9.mail.Part) ArrayList(java.util.ArrayList) Test(org.junit.Test)

Example 98 with BodyPart

use of com.fsck.k9.mail.BodyPart in project k-9 by k9mail.

the class MessageCryptoStructureDetectorTest method findEncrypted__withBadProtocolAndNoBody__shouldReturnRoot.

@Test
public void findEncrypted__withBadProtocolAndNoBody__shouldReturnRoot() throws Exception {
    Message message = messageFromBody(multipart("encrypted", bodypart("application/pgp-encrypted"), bodypart("application/octet-stream")));
    List<Part> encryptedParts = MessageCryptoStructureDetector.findMultipartEncryptedParts(message);
    assertEquals(1, encryptedParts.size());
    assertSame(message, encryptedParts.get(0));
}
Also used : MimeMessage(com.fsck.k9.mail.internet.MimeMessage) Message(com.fsck.k9.mail.Message) BodyPart(com.fsck.k9.mail.BodyPart) Part(com.fsck.k9.mail.Part) Test(org.junit.Test)

Example 99 with BodyPart

use of com.fsck.k9.mail.BodyPart in project k-9 by k9mail.

the class MessageCryptoStructureDetectorTest method findSigned__withNoProtocolAndNoBody__shouldReturnRoot.

@Test
public void findSigned__withNoProtocolAndNoBody__shouldReturnRoot() throws Exception {
    Message message = messageFromBody(multipart("signed", bodypart("text/plain"), bodypart("application/pgp-signature")));
    List<Part> signedParts = MessageCryptoStructureDetector.findMultipartSignedParts(message, messageCryptoAnnotations);
    assertEquals(1, signedParts.size());
    assertSame(message, signedParts.get(0));
}
Also used : MimeMessage(com.fsck.k9.mail.internet.MimeMessage) Message(com.fsck.k9.mail.Message) BodyPart(com.fsck.k9.mail.BodyPart) Part(com.fsck.k9.mail.Part) Test(org.junit.Test)

Example 100 with BodyPart

use of com.fsck.k9.mail.BodyPart in project k-9 by k9mail.

the class MessageCryptoStructureDetectorTest method findEncrypted__withEmptyProtocol__shouldReturnEmpty.

@Test
public void findEncrypted__withEmptyProtocol__shouldReturnEmpty() throws Exception {
    Message message = messageFromBody(multipart("encrypted", bodypart("application/pgp-encrypted"), bodypart("application/octet-stream", "content")));
    List<Part> encryptedParts = MessageCryptoStructureDetector.findMultipartEncryptedParts(message);
    assertTrue(encryptedParts.isEmpty());
}
Also used : MimeMessage(com.fsck.k9.mail.internet.MimeMessage) Message(com.fsck.k9.mail.Message) BodyPart(com.fsck.k9.mail.BodyPart) Part(com.fsck.k9.mail.Part) Test(org.junit.Test)

Aggregations

BodyPart (com.fsck.k9.mail.BodyPart)86 Test (org.junit.Test)73 MimeMessage (com.fsck.k9.mail.internet.MimeMessage)65 Part (com.fsck.k9.mail.Part)64 Message (com.fsck.k9.mail.Message)58 MimeBodyPart (com.fsck.k9.mail.internet.MimeBodyPart)50 Multipart (com.fsck.k9.mail.Multipart)28 Body (com.fsck.k9.mail.Body)25 MimeMultipart (com.fsck.k9.mail.internet.MimeMultipart)22 ArrayList (java.util.ArrayList)13 RobolectricTest (com.fsck.k9.RobolectricTest)12 ByteArrayOutputStream (java.io.ByteArrayOutputStream)12 MessageCreationHelper.createEmptyPart (com.fsck.k9.message.MessageCreationHelper.createEmptyPart)11 MessageCreationHelper.createPart (com.fsck.k9.message.MessageCreationHelper.createPart)11 MessageCreationHelper.createTextPart (com.fsck.k9.message.MessageCreationHelper.createTextPart)11 OutputStream (java.io.OutputStream)11 K9RobolectricTest (com.fsck.k9.K9RobolectricTest)10 MessagingException (com.fsck.k9.mail.MessagingException)10 Stack (java.util.Stack)9 BinaryTempFileBody (com.fsck.k9.mail.internet.BinaryTempFileBody)8