Search in sources :

Example 1 with Mail

use of ninja.postoffice.Mail in project ninja by ninjaframework.

the class MailImplTestHelper method getMailImplWithDemoContent.

public static Mail getMailImplWithDemoContent() {
    Mail mail = new MailImpl();
    mail.setSubject("subject");
    mail.setFrom("from1@domain");
    mail.addReplyTo("replyTo1@domain");
    mail.addReplyTo("replyTo2@domain");
    mail.setCharset("utf-8");
    mail.addHeader("header1", "value1");
    mail.addHeader("header2", "value2");
    mail.addTo("to1@domain");
    mail.addTo("to2@domain");
    mail.addCc("cc1@domain");
    mail.addCc("cc2@domain");
    mail.addBcc("bcc1@domain");
    mail.addBcc("bcc2@domain");
    mail.setBodyHtml("bodyHtml");
    mail.setBodyText("bodyText");
    return mail;
}
Also used : Mail(ninja.postoffice.Mail)

Example 2 with Mail

use of ninja.postoffice.Mail in project ninja by ninjaframework.

the class CommonsMailHelperImplGreenmailIntegrationTest method testCommonsMailer.

@Test
public void testCommonsMailer() throws Exception {
    Mail mail = MailImplTestHelper.getMailImplWithDemoContent();
    // setup the postoffice:
    CommonsmailHelper commonsmailHelper = new CommonsmailHelperImpl();
    Postoffice postoffice = new PostofficeCommonsmailImpl(commonsmailHelper, "localhost", SMTP_TEST_PORT, false, null, null, false);
    postoffice.send(mail);
    assertEquals("from1@domain", ((InternetAddress) greenMail.getReceivedMessages()[0].getFrom()[0]).getAddress());
    assertEquals("subject", greenMail.getReceivedMessages()[0].getSubject());
}
Also used : GreenMail(com.icegreen.greenmail.util.GreenMail) Mail(ninja.postoffice.Mail) Postoffice(ninja.postoffice.Postoffice) Test(org.junit.Test)

Example 3 with Mail

use of ninja.postoffice.Mail in project ninja by ninjaframework.

the class CommonsMailHelperImplTest method testCreateMultiPartEmailWithContent.

@Test
public void testCreateMultiPartEmailWithContent() throws Exception {
    // /////////////////////////////////////////////////////////////////////
    // Test with text only content
    // /////////////////////////////////////////////////////////////////////
    Mail mail = new MailImpl();
    // set only text:
    mail.setBodyText("simple body text");
    MultiPartEmail multiPartEmail = commonsmailHelper.createMultiPartEmailWithContent(mail);
    assertTrue(multiPartEmail instanceof MultiPartEmail);
    // /////////////////////////////////////////////////////////////////////
    // Test with html only content
    // /////////////////////////////////////////////////////////////////////
    mail = new MailImpl();
    // set only text:
    mail.setBodyHtml("<br>simple body text<br>");
    multiPartEmail = commonsmailHelper.createMultiPartEmailWithContent(mail);
    assertTrue(multiPartEmail instanceof HtmlEmail);
    // /////////////////////////////////////////////////////////////////////
    // Test with html AND text content
    // /////////////////////////////////////////////////////////////////////
    mail = new MailImpl();
    // set only text:
    mail.setBodyText("simple body text");
    mail.setBodyHtml("<br>simple body text<br>");
    multiPartEmail = commonsmailHelper.createMultiPartEmailWithContent(mail);
    assertTrue(multiPartEmail instanceof HtmlEmail);
}
Also used : Mail(ninja.postoffice.Mail) MultiPartEmail(org.apache.commons.mail.MultiPartEmail) HtmlEmail(org.apache.commons.mail.HtmlEmail) MailImpl(ninja.postoffice.common.MailImpl) Test(org.junit.Test)

Example 4 with Mail

use of ninja.postoffice.Mail in project ninja by ninjaframework.

the class CommonsMailHelperImplTest method testDoSetServerParameter.

@Test
public void testDoSetServerParameter() throws Exception {
    Mail mail = MailImplTestHelper.getMailImplWithDemoContent();
    MultiPartEmail multiPartEmail = commonsmailHelper.createMultiPartEmailWithContent(mail);
    commonsmailHelper.doSetServerParameter(multiPartEmail, "mail.superserver.com", 33, true, "username", "password", true);
    assertEquals("33", multiPartEmail.getSmtpPort());
    assertEquals("mail.superserver.com", multiPartEmail.getHostName());
    assertEquals(true, multiPartEmail.getMailSession().getDebug());
}
Also used : Mail(ninja.postoffice.Mail) MultiPartEmail(org.apache.commons.mail.MultiPartEmail) Test(org.junit.Test)

Example 5 with Mail

use of ninja.postoffice.Mail in project ninja by ninjaframework.

the class PostofficeMockImplTest method testSending.

@Test
public void testSending() throws Exception {
    // ////////////////////////////////////////////////////////////////////
    // Setup the mockpostoffice
    // ////////////////////////////////////////////////////////////////////
    Postoffice postoffice = new PostofficeMockImpl();
    // /////////////////////////////////////////////////////////////////////
    // Sending of first mail.
    // /////////////////////////////////////////////////////////////////////
    Mail firstMail = new MailImpl();
    firstMail.setSubject("first mail");
    firstMail.addTo("to@localhost");
    firstMail.setFrom("from@localhost");
    firstMail.setBodyText("simple body text");
    // make sure that mocked mailer did not send email previously
    assertEquals(null, ((PostofficeMockImpl) postoffice).getLastSentMail());
    postoffice.send(firstMail);
    // and test that mail has been sent.
    assertEquals("first mail", ((PostofficeMockImpl) postoffice).getLastSentMail().getSubject());
    assertTrue(((PostofficeMockImpl) postoffice).getLastSentMail().getTos().contains("to@localhost"));
    assertTrue(((PostofficeMockImpl) postoffice).getLastSentMail().getFrom().equals("from@localhost"));
    assertTrue(((PostofficeMockImpl) postoffice).getLastSentMail().getBodyText().equals("simple body text"));
    // /////////////////////////////////////////////////////////////////////
    // Sending of another mail. Check that mock mailer handles repeated
    // sending correctly.
    // /////////////////////////////////////////////////////////////////////
    Mail secondMail = new MailImpl();
    secondMail.setSubject("second mail");
    secondMail.addTo("to@localhost");
    secondMail.setFrom("from@localhost");
    secondMail.setBodyText("simple body text");
    // send simple mail via mocked postoffice
    postoffice.send(secondMail);
    // and test that mail has been sent.
    assertEquals("second mail", ((PostofficeMockImpl) postoffice).getLastSentMail().getSubject());
    assertTrue(((PostofficeMockImpl) postoffice).getLastSentMail().getTos().contains("to@localhost"));
    assertTrue(((PostofficeMockImpl) postoffice).getLastSentMail().getFrom().equals("from@localhost"));
    assertTrue(((PostofficeMockImpl) postoffice).getLastSentMail().getBodyText().equals("simple body text"));
}
Also used : Mail(ninja.postoffice.Mail) Postoffice(ninja.postoffice.Postoffice) MailImpl(ninja.postoffice.common.MailImpl) Test(org.junit.Test)

Aggregations

Mail (ninja.postoffice.Mail)7 Test (org.junit.Test)6 MultiPartEmail (org.apache.commons.mail.MultiPartEmail)3 Postoffice (ninja.postoffice.Postoffice)2 MailImpl (ninja.postoffice.common.MailImpl)2 GreenMail (com.icegreen.greenmail.util.GreenMail)1 InternetAddress (javax.mail.internet.InternetAddress)1 HtmlEmail (org.apache.commons.mail.HtmlEmail)1