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 rc...@apache.org on 2020/01/15 07:46:23 UTC
[james-project] 04/15: [Refactoring] Migrate to Junit 5
AuthorizedEndpointsTest
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 87179fc2be7271082ecd950087b18816e6d657cb
Author: duc <dt...@linagora.com>
AuthorDate: Wed Jan 8 22:41:56 2020 +0700
[Refactoring] Migrate to Junit 5 AuthorizedEndpointsTest
---
.../rabbitmq/RabbitMQAuthorizedEndpointsTest.java | 37 ++++++++++++++--------
.../memory/MemoryAuthorizedEndpointsTest.java | 26 ++++++++-------
.../integration/AuthorizedEndpointsTest.java | 24 ++++----------
3 files changed, 45 insertions(+), 42 deletions(-)
diff --git a/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQAuthorizedEndpointsTest.java b/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQAuthorizedEndpointsTest.java
index 56f2c6c..8c296cb 100644
--- a/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQAuthorizedEndpointsTest.java
+++ b/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQAuthorizedEndpointsTest.java
@@ -19,26 +19,37 @@
package org.apache.james.webadmin.integration.rabbitmq;
-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.junit.categories.BasicFeature;
+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.AuthorizedEndpointsTest;
import org.apache.james.webadmin.integration.UnauthorizedModule;
-import org.junit.Rule;
import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.extension.RegisterExtension;
@Category(BasicFeature.class)
-public class RabbitMQAuthorizedEndpointsTest extends AuthorizedEndpointsTest {
+class RabbitMQAuthorizedEndpointsTest extends AuthorizedEndpointsTest {
- @Rule
- public DockerCassandraRule cassandra = new DockerCassandraRule();
+ private static final int LIMIT_TO_10_MESSAGES = 10;
- @Rule
- public CassandraRabbitMQAwsS3JmapTestRule jamesTestRule = CassandraRabbitMQAwsS3JmapTestRule.defaultTestRule();
-
- @Override
- protected GuiceJamesServer createJamesServer() throws Exception {
- return jamesTestRule.jmapServer(cassandra.getModule(), new UnauthorizedModule());
- }
+ @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(new UnauthorizedModule())
+ .overrideWith(binder -> binder.bind(WebAdminConfiguration.class).toInstance(WebAdminConfiguration.TEST_CONFIGURATION)))
+ .build();
}
\ No newline at end of file
diff --git a/server/protocols/webadmin-integration-test/memory-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/memory/MemoryAuthorizedEndpointsTest.java b/server/protocols/webadmin-integration-test/memory-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/memory/MemoryAuthorizedEndpointsTest.java
index a4aa5b9..f3415b4 100644
--- a/server/protocols/webadmin-integration-test/memory-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/memory/MemoryAuthorizedEndpointsTest.java
+++ b/server/protocols/webadmin-integration-test/memory-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/memory/MemoryAuthorizedEndpointsTest.java
@@ -20,21 +20,25 @@
package org.apache.james.webadmin.integration.memory;
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.AuthorizedEndpointsTest;
import org.apache.james.webadmin.integration.UnauthorizedModule;
-import org.junit.Rule;
+import org.junit.jupiter.api.extension.RegisterExtension;
-public class MemoryAuthorizedEndpointsTest extends AuthorizedEndpointsTest {
+class MemoryAuthorizedEndpointsTest extends AuthorizedEndpointsTest {
- @Rule
- public MemoryJmapTestRule memoryJmap = new MemoryJmapTestRule();
+ private static final int LIMIT_TO_10_MESSAGES = 10;
- @Override
- protected GuiceJamesServer createJamesServer() throws Exception {
- return memoryJmap.jmapServer(
- binder -> binder.bind(WebAdminConfiguration.class).toInstance(WebAdminConfiguration.TEST_CONFIGURATION),
- new UnauthorizedModule());
- }
+ @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))
+ .overrideWith(new UnauthorizedModule()))
+ .build();
}
\ No newline at end of file
diff --git a/server/protocols/webadmin-integration-test/webadmin-integration-test-common/src/main/java/org/apache/james/webadmin/integration/AuthorizedEndpointsTest.java b/server/protocols/webadmin-integration-test/webadmin-integration-test-common/src/main/java/org/apache/james/webadmin/integration/AuthorizedEndpointsTest.java
index 7d7d86a..0ddbf24 100644
--- a/server/protocols/webadmin-integration-test/webadmin-integration-test-common/src/main/java/org/apache/james/webadmin/integration/AuthorizedEndpointsTest.java
+++ b/server/protocols/webadmin-integration-test/webadmin-integration-test-common/src/main/java/org/apache/james/webadmin/integration/AuthorizedEndpointsTest.java
@@ -28,35 +28,23 @@ import org.apache.james.webadmin.WebAdminUtils;
import org.apache.james.webadmin.routes.HealthCheckRoutes;
import org.apache.james.webadmin.swagger.routes.SwaggerRoutes;
import org.eclipse.jetty.http.HttpStatus;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import io.restassured.RestAssured;
public abstract class AuthorizedEndpointsTest {
- private GuiceJamesServer guiceJamesServer;
-
- @Before
- public void setUp() throws Exception {
- guiceJamesServer = createJamesServer();
- guiceJamesServer.start();
+ @BeforeEach
+ void setUp(GuiceJamesServer guiceJamesServer) {
WebAdminGuiceProbe webAdminGuiceProbe = guiceJamesServer.getProbe(WebAdminGuiceProbe.class);
RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminGuiceProbe.getWebAdminPort())
.build();
}
- @After
- public void tearDown() {
- guiceJamesServer.stop();
- }
-
- protected abstract GuiceJamesServer createJamesServer() throws Exception;
-
@Test
- public void getHealthchecksShouldNotNeedAuthentication() {
+ void getHealthchecksShouldNotNeedAuthentication() {
when()
.get(HealthCheckRoutes.HEALTHCHECK)
.then()
@@ -64,7 +52,7 @@ public abstract class AuthorizedEndpointsTest {
}
@Test
- public void getSwaggerShouldNotNeedAuthentication() {
+ void getSwaggerShouldNotNeedAuthentication() {
when()
.get(SwaggerRoutes.SWAGGER_ENDPOINT)
.then()
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org