Refine search
public void setup() { final ChainedProperties props = ChainedProperties.getChainedProperties( "email.conf", ClassLoaderUtil.getClassLoader( null, getClass(), false )); wiser = new Wiser(); wiser.setHostname(props.getProperty( "mail.smtp.host", "localhost" )); wiser.setPort(Integer.parseInt(props.getProperty("mail.smtp.port", "2345"))); wiser.start(); try { Thread.sleep(1000); } catch (Throwable t) { // Do nothing } }
assertEquals(0, getWiser().getMessages().size()); assertEquals(2, getWiser().getMessages().size()); List<String> list = new ArrayList<String>(2); list.add(getWiser().getMessages().get(0).getEnvelopeReceiver()); list.add(getWiser().getMessages().get(1).getEnvelopeReceiver()); MimeMessage msg = ((WiserMessage) getWiser().getMessages().get(0)).getMimeMessage(); assertEquals("'singleobject'", msg.getContent()); assertEquals("'singleobject'", msg.getSubject()); assertEquals("from@domain.com", ((InternetAddress) msg.getFrom()[0]).getAddress()); assertEquals("replyTo@domain.com", ((InternetAddress) msg.getReplyTo()[0]).getAddress());
@After public void tearDown() { smtpServer.stop(); }
@Test public void testEmailNotificationWithoutTemplate() throws Exception { EmailNotificationPublisher publisher = new EmailNotificationPublisher(connection, userInfo); Set<OrganizationalEntity> recipients = new HashSet<>(Arrays.asList(factory.newUser("john"))); publisher.publish("admin@jbpm.org", "Test notification", recipients, "Test body"); assertEquals( 1, wiser.getMessages().size() ); MimeMessage msg = (( WiserMessage ) wiser.getMessages().get( 0 )).getMimeMessage(); // Side effect of MIME encoding (I think.. ): \r\n.. String content = ((String) msg.getContent()).replace("\r\n", ""); assertEquals( "Test body", content ); assertEquals( "Test notification", msg.getSubject() ); assertEquals( "admin@jbpm.org", ((InternetAddress)msg.getFrom()[0]).getAddress() ); assertEquals( "john@domain.com", ((InternetAddress)msg.getRecipients( RecipientType.TO )[0]).getAddress() ); assertNull( msg.getRecipients( RecipientType.CC ) ); assertNull( msg.getRecipients( RecipientType.BCC ) ); }
/** * Helper methods */ private void sendAndCheckThatMessagesAreSent(WorkItemImpl workItem, Connection connection) throws Exception { // send email Email email = emailWorkItemHandler.createEmail(workItem, connection); SendHtml.sendHtml(email, connection); List<WiserMessage> messages = wiser.getMessages(); assertEquals(1, messages.size()); for (WiserMessage wiserMessage : messages ) { MimeMessage message = wiserMessage.getMimeMessage(); assertEquals(workItem.getParameter("Subject"), message.getSubject()); assertTrue(Arrays.equals(InternetAddress.parse((String) workItem.getParameter("To")), message.getRecipients(RecipientType.TO))); } }
@Test(timeout=10000) public void testTaskReminderWithoutNotification() throws Exception { CountDownTaskEventListener countDownListener = new CountDownTaskEventListener(1, false, true); addCountDownListner(countDownListener); Map<String, Object> vars = new HashMap<String, Object>(); vars.put("now", new Date()); Reader reader = new InputStreamReader(getClass().getResourceAsStream(MvelFilePath.ReminderWithoutNotification)); InternalTask task = (InternalTask) TaskFactory.evalTask(reader, vars); System.out.println("testTaskReminderWithoutNotification " + task.getTaskData().getStatus()); assertNull(task.getDeadlines()); long taskId = taskService.addTask(task, new HashMap<String, Object>()); taskService.executeReminderForTask(taskId, "Luke Cage"); countDownListener.waitTillCompleted(); assertEquals(1, wiser.getMessages().size()); String receiver = wiser.getMessages().get(0).getEnvelopeReceiver(); assertEquals("tony@domain.com", receiver); MimeMessage msg = ((WiserMessage) wiser.getMessages().get(0)).getMimeMessage(); assertEquals("You have a task ( Simple Test Task ) of process ( taskReminder )", msg.getSubject()); }
@Test public void shouldSendTestEmail() throws Exception { configure(); underTest.sendTestEmail("user@nowhere", "Test Message from SonarQube", "This is a test message from SonarQube."); List<WiserMessage> messages = smtpServer.getMessages(); assertThat(messages).hasSize(1); MimeMessage email = messages.get(0).getMimeMessage(); assertThat(email.getHeader("Content-Type", null)).isEqualTo("text/plain; charset=UTF-8"); assertThat(email.getHeader("From", ",")).isEqualTo("SonarQube from NoWhere <server@nowhere>"); assertThat(email.getHeader("To", null)).isEqualTo("<user@nowhere>"); assertThat(email.getHeader("Subject", null)).isEqualTo("[SONARQUBE] Test Message from SonarQube"); assertThat((String) email.getContent()).startsWith("This is a test message from SonarQube."); }
@Override protected void execute(TestPluginLifeCycle lifeCycle, Wiser wiser) throws IOException, MessagingException, ExecutionException, InterruptedException { Shell shell = lifeCycle.createShell(); lifeCycle.bindClass("produce", Commands.ProduceValue.class); lifeCycle.bindClass("consume", Commands.ConsumeObject.class); Commands.list.clear(); BaseProcessContext process = BaseProcessContext.create(shell, "produce | mail send -s the_subject -b admin@gmail.com | consume").execute(); ShellResponse.Ok ok = assertInstance(ShellResponse.Ok.class, process.getResponse()); Assert.assertEquals(1, wiser.getMessages().size()); WiserMessage msg = wiser.getMessages().get(0); Assert.assertEquals("foo@gmail.com", msg.getEnvelopeSender()); Assert.assertEquals("admin@gmail.com", msg.getEnvelopeReceiver()); Assert.assertEquals("the_subject", msg.getMimeMessage().getSubject()); String data = new String(msg.getData()); String content = (String)msg.getMimeMessage().getContent(); assertTrue(content.contains("<value>abc</value>")); assertTrue(data.contains("Content-Type: text/html;charset=UTF-8")); System.out.println("data = " + data); assertEquals(Arrays.<Object>asList(new Value("abc")), Commands.list); } };
protected AdditionalAsserts assertExampleMessage() { return () -> { final WiserMessage message = wiser.getMessages().get(0); testContext.assertEquals("from@example.com", message.getEnvelopeSender()); final MimeMessage mimeMessage = message.getMimeMessage(); assertThat(mimeMessage.getContentType(), containsString("text/plain")); testContext.assertEquals("Subject", mimeMessage.getSubject()); testContext.assertEquals("Message\n", TestUtils.conv2nl(TestUtils.inputStreamToString(mimeMessage.getInputStream()))); }; }
@Deployment public void testSendEmail() throws Exception { String from = "ordershipping@activiti.org"; boolean male = true; String recipientName = "John Doe"; String recipient = "johndoe@alfresco.com"; Date now = new Date(); String orderId = "123456"; Map<String, Object> vars = new HashMap<String, Object>(); vars.put("sender", from); vars.put("recipient", recipient); vars.put("recipientName", recipientName); vars.put("male", male); vars.put("now", now); vars.put("orderId", orderId); runtimeService.startProcessInstanceByKey("sendMailExample", vars); List<WiserMessage> messages = wiser.getMessages(); assertEquals(1, messages.size()); WiserMessage message = messages.get(0); MimeMessage mimeMessage = message.getMimeMessage(); assertEquals("Your order " + orderId + " has been shipped", mimeMessage.getHeader("Subject", null)); assertEquals(from, mimeMessage.getHeader("From", null)); assertTrue(mimeMessage.getHeader("To", null).contains(recipient)); }
/** * Extracts an email from the queue and consumes the email. * * @return Text of the email */ protected String popEmail() throws MessagingException, IOException { List<WiserMessage> wiserMessageList = wiser.getMessages(); if (wiserMessageList.isEmpty()) { return null; } WiserMessage wiserMessage = wiserMessageList.get(wiserMessageList.size() - 1); wiserMessageList.remove(wiserMessageList.size() - 1); MimeMessage message = wiserMessage.getMimeMessage(); ByteArrayOutputStream os = new ByteArrayOutputStream(); message.writeTo(os); return os.toString(); }
super.before(); wiser = new Wiser(port); wiser.setHostname(hostname); wiser.start(); return wiser.getMessages(); protected void after() { super.after(); wiser.stop();
private void mailTestText(final String text) { MailMessage message = exampleMessage(); message.setText(text); testSuccess(mailClientLogin(), message, () -> { final MimeMessage mimeMessage = wiser.getMessages().get(0).getMimeMessage(); testContext.assertEquals(text, TestUtils.conv2nl(TestUtils.inputStreamToString(mimeMessage.getInputStream()))); }); }
@After public void tearDown() throws Exception { if( wiser != null ) { wiser.getMessages().clear(); wiser.stop(); wiser = null; } }
@Test public void shouldNotSendEmailWhenHostnameNotConfigured() { EmailMessage emailMessage = new EmailMessage() .setTo("user@nowhere") .setSubject("Foo") .setMessage("Bar"); boolean delivered = underTest.deliver(emailMessage); assertThat(smtpServer.getMessages()).isEmpty(); assertThat(delivered).isFalse(); }
final List<WiserMessage> wiserMessages = wiser.getMessages(); final MimeMessage mailMessage = wiserMessage.getMimeMessage(); EmailParserUtils.handleMessage(null, mailMessage, emailFragments);
@Deployment public void testSimpleTextMailMultipleRecipients() { runtimeService.startProcessInstanceByKey("simpleTextOnlyMultipleRecipients"); // 3 recipients == 3 emails in wiser with different receivers List<WiserMessage> messages = wiser.getMessages(); assertEquals(3, messages.size()); // sort recipients for easy assertion List<String> recipients = new ArrayList<String>(); for (WiserMessage message : messages) { recipients.add(message.getEnvelopeReceiver()); } Collections.sort(recipients); assertEquals("fozzie@camunda.org", recipients.get(0)); assertEquals("kermit@camunda.org", recipients.get(1)); assertEquals("mispiggy@camunda.org", recipients.get(2)); }