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/05/16 08:48:23 UTC
[james-project] 08/23: JAMES-2149 User alias should be applied
before domain mapping
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 49e309c5db3eaa803e597f538478e5dd33055972
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Tue May 14 18:00:57 2019 +0700
JAMES-2149 User alias should be applied before domain mapping
If the domainAlias is applicable to the rewritten userAlias then it should be applied
---
.../james/transport/mailets/DomainMappingTest.java | 42 ++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/DomainMappingTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/DomainMappingTest.java
index b4997d9..1a3eaff 100644
--- a/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/DomainMappingTest.java
+++ b/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/DomainMappingTest.java
@@ -178,4 +178,46 @@ public class DomainMappingTest {
() -> jamesServer.getProbe(MailRepositoryProbeImpl.class)
.getRepositoryMailCount(RRT_ERROR_REPOSITORY) == 1);
}
+
+ @Test
+ public void domainAliasShouldBeIgnoredWhenUserAlias() throws Exception {
+ jamesServer.getProbe(DataProbeImpl.class).addUser(BOB_DOMAIN1, PASSWORD);
+
+ webAdminApi.put("/address/aliases/" + BOB_DOMAIN1 + "/sources/" + USER_DOMAIN2);
+ webAdminApi.put("/domains/" + DOMAIN1 + "/aliases/" + DOMAIN2);
+
+ messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort())
+ .sendMessage(FakeMail.builder()
+ .name("name")
+ .mimeMessage(message)
+ .sender(SENDER)
+ .recipient(USER_DOMAIN2));
+
+ imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort())
+ .login(BOB_DOMAIN1, PASSWORD)
+ .select(IMAPMessageReader.INBOX)
+ .awaitMessage(awaitAtMostOneMinute);
+ assertThat(imapMessageReader.readFirstMessage()).contains(MESSAGE_CONTENT);
+ }
+
+ @Test
+ public void domainAliasShouldBeChainedIfApplicableAfterUserAliasRewrite() throws Exception {
+ jamesServer.getProbe(DataProbeImpl.class).addUser(BOB_DOMAIN1, PASSWORD);
+
+ webAdminApi.put("/address/aliases/" + BOB_DOMAIN2 + "/sources/" + USER_DOMAIN2);
+ webAdminApi.put("/domains/" + DOMAIN1 + "/aliases/" + DOMAIN2);
+
+ messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort())
+ .sendMessage(FakeMail.builder()
+ .name("name")
+ .mimeMessage(message)
+ .sender(SENDER)
+ .recipient(USER_DOMAIN2));
+
+ imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort())
+ .login(BOB_DOMAIN1, PASSWORD)
+ .select(IMAPMessageReader.INBOX)
+ .awaitMessage(awaitAtMostOneMinute);
+ assertThat(imapMessageReader.readFirstMessage()).contains(MESSAGE_CONTENT);
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org