You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2019/06/17 11:04:33 UTC
[james-project] 01/09: MAILET-136 James SMTP doesn't create new
user or mailbox when doing domain re routing
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 <dt...@linagora.com>
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("user@domain1.com", PASSWORD);
+
+ messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort())
+ .sendMessage(FROM, "user@domain2.com");
+
+ imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort())
+ .login("user@domain1.com", PASSWORD)
+ .select(IMAPMessageReader.INBOX)
+ .awaitMessage(awaitAtMostOneMinute);
+
+ // assert user non existence
+ assertThat(dataProbe.listUsers())
+ .doesNotContain("user@domain2.com");
+
+ // assert alias address has no mailbox
+ assertThat(jamesServer.getProbe(MailboxProbeImpl.class)
+ .listUserMailboxes("user@doamin2.com"))
+ .isEmpty();
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org