List of usage examples for org.springframework.mail.javamail MimeMessageHelper getMimeMessage
public final MimeMessage getMimeMessage()
From source file:org.yes.cart.service.mail.impl.MailComposerImplTest.java
/** * html only/*from ww w .j a v a 2 s. c o m*/ */ @Test public void testComposeMimeMessageInternalHtmlVersionOnly() throws MessagingException, IOException, ClassNotFoundException { // of course you would use DI in any real-world cases JavaMailSenderImpl sender = new JavaMailSenderImpl(); sender.setHost("localhost"); MimeMessage message = sender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(message, true, "UTF-8"); String textTemplate = null; String htmlTemplate = "<h2>$name</h2> lives in theme park with:<br> <% with.each{ out.print(it + '<br>');}%>"; MailComposerImpl mailComposer = new MailComposerImpl(null); mailComposer.composeMessage(helper, textTemplate, htmlTemplate, Collections.EMPTY_LIST, "SHOP10", "en", "test", createModel()); assertTrue(helper.isMultipart()); ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); helper.getMimeMessage().writeTo(byteArrayOutputStream); String str = byteArrayOutputStream.toString("UTF-8"); assertNotNull(str); // html and text present in mail message assertTrue(str.contains("<h2>Bender</h2> lives in theme park with:<br> blackjack<br>poetess<br>")); }
From source file:org.yes.cart.service.mail.impl.MailComposerImplTest.java
@Test public void testComposeMimeMessageInternalFullIntegration() throws MessagingException, IOException, ClassNotFoundException { final MailTemplateResourcesProvider mailTemplateResourcesProvider = mockery .mock(MailTemplateResourcesProvider.class); mockery.checking(new Expectations() { {//w w w . j av a 2s.c om one(mailTemplateResourcesProvider).getTemplate(Arrays.asList("default/mail/"), "SHOP10", "en", "imtest", ".txt"); will(returnValue(IOUtils.toString( new FileInputStream(new File("src/test/resources/mailtemplates/default/imtest/imtest.txt")), "UTF-8"))); one(mailTemplateResourcesProvider).getTemplate(Arrays.asList("default/mail/"), "SHOP10", "en", "imtest", ".html"); will(returnValue(IOUtils.toString( new FileInputStream( new File("src/test/resources/mailtemplates/default/imtest/imtest.html")), "UTF-8"))); one(mailTemplateResourcesProvider).getTemplate(Arrays.asList("default/mail/"), "SHOP10", "en", "imtest", ".properties"); will(returnValue(IOUtils.toString( new FileInputStream( new File("src/test/resources/mailtemplates/default/imtest/imtest.properties")), "UTF-8"))); one(mailTemplateResourcesProvider).getResource(Arrays.asList("default/mail/"), "SHOP10", "en", "imtest", "test.gif"); will(returnValue(IOUtils.toByteArray(new FileInputStream( new File("src/test/resources/mailtemplates/default/imtest/resources/test.gif"))))); one(mailTemplateResourcesProvider).getResource(Arrays.asList("default/mail/"), "SHOP10", "en", "imtest", "test.jpeg"); will(returnValue(IOUtils.toByteArray(new FileInputStream( new File("src/test/resources/mailtemplates/default/imtest/resources/test.jpeg"))))); } }); // of course you would use DI in any real-world cases JavaMailSenderImpl sender = new JavaMailSenderImpl(); sender.setHost("localhost"); MimeMessage message = sender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(message, true, "UTF-8"); MailComposerImpl mailComposer = new MailComposerImpl(mailTemplateResourcesProvider); mailComposer.composeMessage(message, "SHOP10", "en", Arrays.asList("default/mail/"), "imtest", "test@localhost.lo", "to@somedomain.com", "cc@somedomain.com", "bcc@somedomain.com", createModel()); assertTrue(helper.isMultipart()); ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); helper.getMimeMessage().writeTo(byteArrayOutputStream); String str = byteArrayOutputStream.toString("UTF-8"); assertNotNull(str); // html and text present in mail message assertTrue(str.contains("Bender lives in theme park with blackjack poetess")); assertTrue(str.contains("<h2>Bender</h2> lives in theme park with:<br> blackjack<br>poetess<br>")); assertTrue(str.contains("From: test@localhost.lo")); assertTrue(str.contains("To: to@somedomain.com")); assertTrue(str.contains("cc@somedomain.com")); assertTrue(str.contains("Bcc: bcc@somedomain.com")); assertEquals(" ?", message.getSubject()); mockery.assertIsSatisfied(); }
From source file:org.yes.cart.service.mail.impl.MailComposerImplTest.java
@Test public void complexObjectNavigation() throws MessagingException, IOException, ClassNotFoundException { Map<String, Object> map = new HashMap<String, Object>(); map.put("root", new Pair("hi", "there")); String textTemplate = "$root.first $root.second"; JavaMailSenderImpl sender = new JavaMailSenderImpl(); sender.setHost("localhost"); MimeMessage message = sender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(message, true, "UTF-8"); MailComposerImpl mailComposer = new MailComposerImpl(null); mailComposer.composeMessage(helper, textTemplate, null, Collections.EMPTY_LIST, "SHOP10", "en", "test", map);//from w ww.j a va2 s.c om ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); helper.getMimeMessage().writeTo(byteArrayOutputStream); String str = byteArrayOutputStream.toString("UTF-8"); assertNotNull(str); // html and text present in mail message assertTrue(str.contains("hi there")); }
From source file:org.yes.cart.service.mail.impl.MailComposerImplTest.java
/** * html only/*from w w w . j a v a 2 s .c o m*/ */ @Test public void testConvertMailEntityToMimeMessage() throws MessagingException, IOException, ClassNotFoundException { // of course you would use DI in any real-world cases final Mail mail = new MailEntity(); mail.setShopCode("SHOP10"); mail.setSubject(" ?"); mail.setFrom("test@localhost.lo"); mail.setRecipients("to@somedomain.com"); mail.setCc("cc@somedomain.com"); mail.setBcc("bcc@somedomain.com"); mail.setTextVersion("Bender lives in theme park with blackjack poetess"); mail.setHtmlVersion("<h2>Bender</h2> lives in theme park with:<br> blackjack<br>poetess<br>"); JavaMailSenderImpl sender = new JavaMailSenderImpl(); sender.setHost("localhost"); MimeMessage message = sender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(message, true, "UTF-8"); MailComposerImpl mailComposer = new MailComposerImpl(null); mailComposer.convertMessage(mail, message); assertTrue(helper.isMultipart()); ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); helper.getMimeMessage().writeTo(byteArrayOutputStream); String str = byteArrayOutputStream.toString("UTF-8"); assertNotNull(str); // html and text present in mail message assertTrue(str.contains("Bender lives in theme park with blackjack poetess")); assertTrue(str.contains("<h2>Bender</h2> lives in theme park with:<br> blackjack<br>poetess<br>")); assertTrue(str.contains("From: test@localhost.lo")); assertTrue(str.contains("To: to@somedomain.com")); assertTrue(str.contains("cc@somedomain.com")); assertTrue(str.contains("Bcc: bcc@somedomain.com")); assertEquals(" ?", message.getSubject()); }