This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 74988eb7e7cb8f48c7b1a336162ba833cb0ada50 Author: Tran Tien Duc <[email protected]> AuthorDate: Wed Jun 5 15:39:36 2019 +0700 MAILET-136 James SMTP doesn't create new user or mailbox when doing domain re routing --- .../RecipientRewriteTableIntegrationTest.java | 30 +++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/RecipientRewriteTableIntegrationTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/RecipientRewriteTableIntegrationTest.java index 34cd1d2..0a12f0a 100644 --- a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/RecipientRewriteTableIntegrationTest.java +++ b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/RecipientRewriteTableIntegrationTest.java @@ -25,6 +25,7 @@ import static org.apache.james.mailets.configuration.Constants.PASSWORD; import static org.apache.james.mailets.configuration.Constants.awaitAtMostOneMinute; import static org.assertj.core.api.Assertions.assertThat; +import org.apache.james.modules.MailboxProbeImpl; import org.apache.james.modules.protocols.ImapGuiceProbe; import org.apache.james.modules.protocols.SmtpGuiceProbe; import org.apache.james.probe.DataProbe; @@ -176,7 +177,6 @@ public class RecipientRewriteTableIntegrationTest { @Test public void messageShouldNotSendToRecipientWhenDomainMapping() throws Exception { dataProbe.addDomainAliasMapping(DEFAULT_DOMAIN, JAMES_ANOTHER_DOMAIN); - dataProbe.addUser(ANY_AT_ANOTHER_DOMAIN, PASSWORD); messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, ANY_AT_JAMES); @@ -222,4 +222,32 @@ public class RecipientRewriteTableIntegrationTest { .awaitMessage(awaitAtMostOneMinute); assertThat(imapMessageReader.readFirstMessage()).isNotNull(); } + + @Test + public void domainAliasMappingShouldNotCreateNonExistedUserWhenReRouting() throws Exception { + dataProbe.addDomain("domain1.com"); + dataProbe.addDomain("domain2.com"); + + // domain2 as the source, domain1 as the destination + dataProbe.addDomainAliasMapping("domain2.com", "domain1.com"); + + dataProbe.addUser("[email protected]", PASSWORD); + + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) + .sendMessage(FROM, "[email protected]"); + + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) + .login("[email protected]", PASSWORD) + .select(IMAPMessageReader.INBOX) + .awaitMessage(awaitAtMostOneMinute); + + // assert user non existence + assertThat(dataProbe.listUsers()) + .doesNotContain("[email protected]"); + + // assert alias address has no mailbox + assertThat(jamesServer.getProbe(MailboxProbeImpl.class) + .listUserMailboxes("[email protected]")) + .isEmpty(); + } } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
