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-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org