/** * {@inheritDoc} */ public boolean isConnected() { return getServiceStatus() == ExternalServiceStatus.CONNECTED; }
@Test public void disabled() throws MessagingException { mailSender.smtpEnabled = false; mailSender.init(); ExternalServiceStatus result = mailSender.getServiceStatus(); assertThat(result, is(ExternalServiceStatus.DISABLED)); verifyZeroInteractions(objectFactoryMock, transportMock); } }
@Test public void notConnected() { mailSender.smtpEnabled = true; boolean result = mailSender.sendEMail("subject", "htmlBody", "textBody", Arrays.asList("one@example.com")); assertThat(result, is(false)); assertThat(mailSender.getServiceStatus(), is(ExternalServiceStatus.DISCONNECTED)); verifyZeroInteractions(mailMock); verifyZeroInteractions(transportMock); verifyZeroInteractions(objectFactoryMock); }
if (getServiceStatus() == ExternalServiceStatus.DISABLED) { return; } else if (!isConnected()) {
@Test public void notConnected() throws MessagingException { mailSender.smtpEnabled = true; when(objectFactoryMock.getSmtpTransport()).thenReturn(transportMock); doThrow(MessagingException.class).when(transportMock).connect(any(String.class), any(Integer.class), any(String.class), any(String.class)); mailSender.init(); ExternalServiceStatus result = mailSender.getServiceStatus(); assertThat(result, is(ExternalServiceStatus.DISCONNECTED)); verify(objectFactoryMock).getSmtpTransport(); verify(transportMock).connect(any(String.class), any(Integer.class), any(String.class), any(String.class)); verifyNoMoreInteractions(objectFactoryMock, transportMock); }
@Test public void connected() throws MessagingException { mailSender.smtpEnabled = true; when(objectFactoryMock.getSmtpTransport()).thenReturn(transportMock); mailSender.init(); ExternalServiceStatus result = mailSender.getServiceStatus(); assertThat(result, is(ExternalServiceStatus.CONNECTED)); verify(objectFactoryMock).getSmtpTransport(); verify(transportMock).connect(any(String.class), any(Integer.class), any(String.class), any(String.class)); verify(transportMock).close(); verifyNoMoreInteractions(objectFactoryMock, transportMock); }
@Test public void emptyRecipients() throws Exception { Session session = Session.getInstance(new Properties()); when(mailMock.getMailSession()).thenReturn(session); when(objectFactoryMock.createHtmlEmail()).thenReturn(mailMock); when(objectFactoryMock.getSmtpTransport()).thenReturn(transportMock); mailSender.defaultRecipientString = ""; mailSender.smtpHost = "host"; mailSender.smtpPort = 25; mailSender.smtpUser = "user"; mailSender.smtpPassword = "passwd"; mailSender.senderAddress = "sender@example.com"; mailSender.senderName = "Sender Name"; mailSender.smtpEnabled = true; mailSender.init(); boolean result = mailSender.sendEMail("subject", "htmlBody", "textBody", Collections.emptyList()); assertThat(result, is(false)); assertThat(mailSender.getServiceStatus(), is(ExternalServiceStatus.CONNECTED)); }
assertThat(mailSender.getServiceStatus(), is(ExternalServiceStatus.CONNECTED)); assertThat(mailSender.getServiceType(), is(ExternalServiceType.MAIL_SENDER)); verify(objectFactoryMock).getSmtpTransport();