MAILET-160 Don't fail when the MimeMessage has not recipient
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/e8f52033 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/e8f52033 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/e8f52033 Branch: refs/heads/master Commit: e8f52033170074e716b206d4a27a2e79bff9aecd Parents: 9ba015d Author: Antoine Duprat <adup...@linagora.com> Authored: Mon Nov 20 10:39:16 2017 +0100 Committer: Antoine Duprat <adup...@linagora.com> Committed: Mon Nov 20 10:39:16 2017 +0100 ---------------------------------------------------------------------- .../james/transport/mailets/ContactExtractor.java | 5 +++-- .../james/transport/mailets/ContactExtractorTest.java | 12 ++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/e8f52033/mailet/standard/src/main/java/org/apache/james/transport/mailets/ContactExtractor.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/main/java/org/apache/james/transport/mailets/ContactExtractor.java b/mailet/standard/src/main/java/org/apache/james/transport/mailets/ContactExtractor.java index bf5665b..6c8f23e 100644 --- a/mailet/standard/src/main/java/org/apache/james/transport/mailets/ContactExtractor.java +++ b/mailet/standard/src/main/java/org/apache/james/transport/mailets/ContactExtractor.java @@ -105,8 +105,9 @@ public class ContactExtractor extends GenericMailet implements Mailet { .map(Throwing.function(extractedContacts -> objectMapper.writeValueAsString(extractedContacts))); } - private boolean hasRecipients(MimeMessage mimeMessage) throws MessagingException { - return mimeMessage.getAllRecipients().length > 0; + @VisibleForTesting boolean hasRecipients(MimeMessage mimeMessage) throws MessagingException { + return mimeMessage.getAllRecipients() != null + && mimeMessage.getAllRecipients().length > 0; } private ImmutableList<String> recipients(MimeMessage mimeMessage) throws MessagingException { http://git-wip-us.apache.org/repos/asf/james-project/blob/e8f52033/mailet/standard/src/test/java/org/apache/james/transport/mailets/ContactExtractorTest.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/test/java/org/apache/james/transport/mailets/ContactExtractorTest.java b/mailet/standard/src/test/java/org/apache/james/transport/mailets/ContactExtractorTest.java index 0ba88ba..ccde3d6 100644 --- a/mailet/standard/src/test/java/org/apache/james/transport/mailets/ContactExtractorTest.java +++ b/mailet/standard/src/test/java/org/apache/james/transport/mailets/ContactExtractorTest.java @@ -233,6 +233,18 @@ public class ContactExtractorTest { mailet.service(mail); assertThat(mail.getAttribute(ATTRIBUTE)).isNull(); + } + + @Test + public void hasRecipientsShouldNotThrowWhenNoRecipient() throws Exception { + MimeMessage message = MimeMessageBuilder.mimeMessageBuilder() + .setSender(SENDER) + .setSubject("Contact collection Rocks") + .setText("This is my email") + .build(); + + boolean hasRecipients = mailet.hasRecipients(message); + assertThat(hasRecipients).isFalse(); } } \ No newline at end of file --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org