private void assertCorrectContentType(final String picture, final String contentType) throws Exception { final HtmlEmail htmlEmail = createDefaultHtmlEmail(); final String cid = htmlEmail.embed(new File("./src/test/resources/images/" + picture), "Apache Logo"); final String htmlMsg = "<html><img src=\"cid:" + cid + "\"><html>"; htmlEmail.setHtmlMsg(htmlMsg); htmlEmail.buildMimeMessage(); final MimeMessage mm = htmlEmail.getMimeMessage(); mm.saveChanges(); final MimeMessageParser mmp = new MimeMessageParser(mm); mmp.parse(); final List<?> attachments = mmp.getAttachmentList(); assertEquals("Attachment size", 1, attachments.size()); final DataSource ds = (DataSource) attachments.get(0); assertEquals("Content type", contentType, ds.getContentType()); }
@Test public void testParseCreatedHtmlEmailWithTextContent() throws Exception { final Session session = Session.getDefaultInstance(new Properties()); final HtmlEmail email = new HtmlEmail(); email.setMailSession(session); email.setFrom("test_from@apache.org"); email.setSubject("Test Subject"); email.addTo("test_to@apache.org"); email.setTextMsg("My test message"); email.buildMimeMessage(); final MimeMessage msg = email.getMimeMessage(); final MimeMessageParser mimeMessageParser = new MimeMessageParser(msg); mimeMessageParser.parse(); assertEquals("Test Subject", mimeMessageParser.getSubject()); assertNotNull(mimeMessageParser.getMimeMessage()); assertTrue(mimeMessageParser.isMultipart()); assertFalse(mimeMessageParser.hasHtmlContent()); assertTrue(mimeMessageParser.hasPlainContent()); assertNotNull(mimeMessageParser.getPlainContent()); assertNull(mimeMessageParser.getHtmlContent()); assertTrue(mimeMessageParser.getTo().size() == 1); assertTrue(mimeMessageParser.getCc().size() == 0); assertTrue(mimeMessageParser.getBcc().size() == 0); assertEquals("test_from@apache.org", mimeMessageParser.getFrom()); assertEquals("test_from@apache.org", mimeMessageParser.getReplyTo()); assertFalse(mimeMessageParser.hasAttachments()); }
@Test public void testParseCreatedHtmlEmailWithNoContent() throws Exception { final Session session = Session.getDefaultInstance(new Properties()); final HtmlEmail email = new HtmlEmail(); email.setMailSession(session); email.setFrom("test_from@apache.org"); email.setSubject("Test Subject"); email.addTo("test_to@apache.org"); email.buildMimeMessage(); final MimeMessage msg = email.getMimeMessage(); final MimeMessageParser mimeMessageParser = new MimeMessageParser(msg); mimeMessageParser.parse(); assertEquals("Test Subject", mimeMessageParser.getSubject()); assertNotNull(mimeMessageParser.getMimeMessage()); assertTrue(mimeMessageParser.isMultipart()); assertFalse(mimeMessageParser.hasHtmlContent()); assertFalse(mimeMessageParser.hasPlainContent()); assertNull(mimeMessageParser.getPlainContent()); assertNull(mimeMessageParser.getHtmlContent()); assertTrue(mimeMessageParser.getTo().size() == 1); assertTrue(mimeMessageParser.getCc().size() == 0); assertTrue(mimeMessageParser.getBcc().size() == 0); assertEquals("test_from@apache.org", mimeMessageParser.getFrom()); assertEquals("test_from@apache.org", mimeMessageParser.getReplyTo()); assertFalse(mimeMessageParser.hasAttachments()); }
@Test public void testParseCreatedHtmlEmailWithMixedContent() throws Exception { final Session session = Session.getDefaultInstance(new Properties()); final HtmlEmail email = new HtmlEmail(); email.setMailSession(session); email.setFrom("test_from@apache.org"); email.setSubject("Test Subject"); email.addTo("test_to@apache.org"); email.setTextMsg("My test message"); email.setHtmlMsg("<p>My HTML message</p>"); email.buildMimeMessage(); final MimeMessage msg = email.getMimeMessage(); final MimeMessageParser mimeMessageParser = new MimeMessageParser(msg); mimeMessageParser.parse(); assertEquals("Test Subject", mimeMessageParser.getSubject()); assertNotNull(mimeMessageParser.getMimeMessage()); assertTrue(mimeMessageParser.isMultipart()); assertTrue(mimeMessageParser.hasHtmlContent()); assertTrue(mimeMessageParser.hasPlainContent()); assertNotNull(mimeMessageParser.getPlainContent()); assertNotNull(mimeMessageParser.getHtmlContent()); assertTrue(mimeMessageParser.getTo().size() == 1); assertTrue(mimeMessageParser.getCc().size() == 0); assertTrue(mimeMessageParser.getBcc().size() == 0); assertEquals("test_from@apache.org", mimeMessageParser.getFrom()); assertEquals("test_from@apache.org", mimeMessageParser.getReplyTo()); assertFalse(mimeMessageParser.hasAttachments()); }