This is an automated email from the ASF dual-hosted git repository.

rcordier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit da952b98046b1375a9aec6d5c69ab3c7c67d1713
Author: duc <dt...@linagora.com>
AuthorDate: Wed Jan 8 22:38:03 2020 +0700

    [Refactoring] Migrate to Junit 5 ForwardIntegrationTest
---
 .../rabbitmq/RabbitMQForwardIntegrationTest.java   | 38 +++++++++++---------
 .../memory/MemoryForwardIntegrationTest.java       | 26 +++++++-------
 .../integration/ForwardIntegrationTest.java        | 42 +++++++++-------------
 3 files changed, 53 insertions(+), 53 deletions(-)

diff --git 
a/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQForwardIntegrationTest.java
 
b/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQForwardIntegrationTest.java
index 2631c15..04655b9 100644
--- 
a/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQForwardIntegrationTest.java
+++ 
b/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQForwardIntegrationTest.java
@@ -19,26 +19,32 @@
 
 package org.apache.james.webadmin.integration.rabbitmq;
 
-import java.io.IOException;
-
-import org.apache.james.CassandraRabbitMQAwsS3JmapTestRule;
-import org.apache.james.DockerCassandraRule;
+import org.apache.james.CassandraExtension;
+import org.apache.james.CassandraRabbitMQJamesServerMain;
+import org.apache.james.DockerElasticSearchExtension;
 import org.apache.james.GuiceJamesServer;
+import org.apache.james.JamesServerBuilder;
+import org.apache.james.JamesServerExtension;
+import org.apache.james.modules.AwsS3BlobStoreExtension;
+import org.apache.james.modules.RabbitMQExtension;
+import org.apache.james.modules.TestJMAPServerModule;
 import org.apache.james.webadmin.WebAdminConfiguration;
 import org.apache.james.webadmin.integration.ForwardIntegrationTest;
-import org.junit.Rule;
+import org.junit.jupiter.api.extension.RegisterExtension;
 
-public class RabbitMQForwardIntegrationTest extends ForwardIntegrationTest {
+class RabbitMQForwardIntegrationTest extends ForwardIntegrationTest {
 
-    @Rule
-    public DockerCassandraRule cassandra = new DockerCassandraRule();
-    @Rule
-    public CassandraRabbitMQAwsS3JmapTestRule rule = 
CassandraRabbitMQAwsS3JmapTestRule.defaultTestRule();
+    private static final int LIMIT_TO_10_MESSAGES = 10;
 
-    @Override
-    public GuiceJamesServer createJmapServer() throws IOException {
-        return rule.jmapServer(cassandra.getModule(),
-            binder -> binder.bind(WebAdminConfiguration.class)
-                .toInstance(WebAdminConfiguration.TEST_CONFIGURATION));
-    }
+    @RegisterExtension
+    static JamesServerExtension testExtension = new JamesServerBuilder()
+        .extension(new DockerElasticSearchExtension())
+        .extension(new CassandraExtension())
+        .extension(new AwsS3BlobStoreExtension())
+        .extension(new RabbitMQExtension())
+        .server(configuration -> 
GuiceJamesServer.forConfiguration(configuration)
+            .combineWith(CassandraRabbitMQJamesServerMain.MODULES)
+            .overrideWith(new TestJMAPServerModule(LIMIT_TO_10_MESSAGES))
+            .overrideWith(binder -> 
binder.bind(WebAdminConfiguration.class).toInstance(WebAdminConfiguration.TEST_CONFIGURATION)))
+        .build();
 }
diff --git 
a/server/protocols/webadmin-integration-test/memory-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/memory/MemoryForwardIntegrationTest.java
 
b/server/protocols/webadmin-integration-test/memory-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/memory/MemoryForwardIntegrationTest.java
index 545529e..7e4bbf0 100644
--- 
a/server/protocols/webadmin-integration-test/memory-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/memory/MemoryForwardIntegrationTest.java
+++ 
b/server/protocols/webadmin-integration-test/memory-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/memory/MemoryForwardIntegrationTest.java
@@ -19,22 +19,24 @@
 
 package org.apache.james.webadmin.integration.memory;
 
-import java.io.IOException;
-
 import org.apache.james.GuiceJamesServer;
-import org.apache.james.MemoryJmapTestRule;
+import org.apache.james.JamesServerBuilder;
+import org.apache.james.JamesServerExtension;
+import org.apache.james.MemoryJamesServerMain;
+import org.apache.james.modules.TestJMAPServerModule;
 import org.apache.james.webadmin.WebAdminConfiguration;
 import org.apache.james.webadmin.integration.ForwardIntegrationTest;
-import org.junit.Rule;
+import org.junit.jupiter.api.extension.RegisterExtension;
 
-public class MemoryForwardIntegrationTest extends ForwardIntegrationTest {
+class MemoryForwardIntegrationTest extends ForwardIntegrationTest {
 
-    @Rule
-    public MemoryJmapTestRule memoryJmap = new MemoryJmapTestRule();
+    private static final int LIMIT_TO_10_MESSAGES = 10;
 
-    @Override
-    public GuiceJamesServer createJmapServer() throws IOException {
-        return memoryJmap.jmapServer(binder -> 
binder.bind(WebAdminConfiguration.class)
-            .toInstance(WebAdminConfiguration.TEST_CONFIGURATION));
-    }
+    @RegisterExtension
+    static JamesServerExtension jamesServerExtension = new JamesServerBuilder()
+        .server(configuration -> 
GuiceJamesServer.forConfiguration(configuration)
+            
.combineWith(MemoryJamesServerMain.IN_MEMORY_SERVER_AGGREGATE_MODULE)
+            .overrideWith(new TestJMAPServerModule(LIMIT_TO_10_MESSAGES))
+            .overrideWith(binder -> 
binder.bind(WebAdminConfiguration.class).toInstance(WebAdminConfiguration.TEST_CONFIGURATION)))
+        .build();
 }
diff --git 
a/server/protocols/webadmin-integration-test/webadmin-integration-test-common/src/main/java/org/apache/james/webadmin/integration/ForwardIntegrationTest.java
 
b/server/protocols/webadmin-integration-test/webadmin-integration-test-common/src/main/java/org/apache/james/webadmin/integration/ForwardIntegrationTest.java
index d3c1f47..8ebfcee 100644
--- 
a/server/protocols/webadmin-integration-test/webadmin-integration-test-common/src/main/java/org/apache/james/webadmin/integration/ForwardIntegrationTest.java
+++ 
b/server/protocols/webadmin-integration-test/webadmin-integration-test-common/src/main/java/org/apache/james/webadmin/integration/ForwardIntegrationTest.java
@@ -53,29 +53,23 @@ import org.apache.james.utils.SMTPMessageSender;
 import org.apache.james.utils.WebAdminGuiceProbe;
 import org.apache.james.webadmin.WebAdminUtils;
 import org.awaitility.Duration;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
 import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
 
 import io.restassured.RestAssured;
 import io.restassured.specification.RequestSpecification;
 
 public abstract class ForwardIntegrationTest {
 
-    @Rule
-    public SMTPMessageSender messageSender = new SMTPMessageSender(DOMAIN);
-
-    private GuiceJamesServer jmapServer;
+    private SMTPMessageSender messageSender;
     private RequestSpecification webAdminApi;
     private Port jmapPort;
 
-    @Before
-    public void setUp() throws Exception {
-        jmapServer = createJmapServer();
-        jmapServer.start();
-
+    @BeforeEach
+    void setUp(GuiceJamesServer jmapServer) throws Exception {
+        messageSender = new SMTPMessageSender(DOMAIN);
         DataProbe dataProbe = jmapServer.getProbe(DataProbeImpl.class);
         dataProbe.addDomain(DOMAIN);
         dataProbe.addUser(BOB.asString(), BOB_PASSWORD);
@@ -84,23 +78,21 @@ public abstract class ForwardIntegrationTest {
 
         jmapPort = jmapServer.getProbe(JmapGuiceProbe.class).getJmapPort();
         RestAssured.requestSpecification = jmapRequestSpecBuilder
-                .setPort(jmapPort.getValue())
-                .build();
+            .setPort(jmapPort.getValue())
+            .build();
 
         webAdminApi = 
WebAdminUtils.spec(jmapServer.getProbe(WebAdminGuiceProbe.class).getWebAdminPort());
 
     }
 
-    protected abstract GuiceJamesServer createJmapServer() throws IOException;
-
-    @After
-    public void tearDown() {
-        jmapServer.stop();
+    @AfterEach
+    void tearDown() throws IOException {
+        messageSender.close();
     }
 
     @Category(BasicFeature.class)
     @Test
-    public void messageShouldBeForwardedWhenDefinedInRESTAPI() {
+    void messageShouldBeForwardedWhenDefinedInRESTAPI() {
         webAdminApi.put(String.format("/address/forwards/%s/targets/%s", 
ALICE.asString(), BOB.asString()));
 
         AccessToken cedricAccessToken = 
authenticateJamesUser(baseUri(jmapPort), CEDRIC, CEDRIC_PASSWORD);
@@ -147,7 +139,7 @@ public abstract class ForwardIntegrationTest {
     }
 
     @Test
-    public void messageShouldBeForwardedWhenBaseRecipientWhenInDestination() {
+    void messageShouldBeForwardedWhenBaseRecipientWhenInDestination() {
         webAdminApi.put(String.format("/address/forwards/%s/targets/%s", 
ALICE.asString(), BOB.asString()));
         webAdminApi.put(String.format("/address/forwards/%s/targets/%s", 
ALICE.asString(), ALICE.asString()));
 
@@ -207,7 +199,7 @@ public abstract class ForwardIntegrationTest {
     }
 
     @Test
-    public void recursiveForwardShouldWork() {
+    void recursiveForwardShouldWork() {
         webAdminApi.put(String.format("/address/forwards/%s/targets/%s", 
ALICE.asString(), CEDRIC.asString()));
         webAdminApi.put(String.format("/address/forwards/%s/targets/%s", 
CEDRIC.asString(), BOB.asString()));
 
@@ -255,7 +247,7 @@ public abstract class ForwardIntegrationTest {
     }
 
     @Test
-    public void recursiveWithRecipientCopyForwardShouldWork() {
+    void recursiveWithRecipientCopyForwardShouldWork() {
         webAdminApi.put(String.format("/address/forwards/%s/targets/%s", 
ALICE.asString(), ALICE.asString()));
         webAdminApi.put(String.format("/address/forwards/%s/targets/%s", 
ALICE.asString(), BOB.asString()));
         webAdminApi.put(String.format("/address/forwards/%s/targets/%s", 
BOB.asString(), CEDRIC.asString()));
@@ -304,7 +296,7 @@ public abstract class ForwardIntegrationTest {
     }
 
     @Test
-    public void baseRecipientShouldNotReceiveEmailOnDefaultForward() {
+    void baseRecipientShouldNotReceiveEmailOnDefaultForward() {
         webAdminApi.put(String.format("/address/forwards/%s/targets/%s", 
ALICE.asString(), BOB.asString()));
 
         AccessToken cedricAccessToken = 
authenticateJamesUser(baseUri(jmapPort), CEDRIC, CEDRIC_PASSWORD);


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to