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 2018/06/05 07:55:42 UTC
james-project git commit: Revert "JAMES-2404 Use programmatically
registered extensions"
Repository: james-project
Updated Branches:
refs/heads/master 8b422da32 -> 088870ebb
Revert "JAMES-2404 Use programmatically registered extensions"
This reverts commit f8faf50e8cb76cdd1931ddcebb0f3e4865028eaf.
This commit introduced a move toward JUNIT 5.2.0 in order to use programmatically registered extensions, which looked very promissing.
However, JUNIT 5.2.0 is not stable yet, and that lead to many tests being skept. As such, we failed finding a satisfying solution, so we have to revert, in order to get all tests played.
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/088870eb
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/088870eb
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/088870eb
Branch: refs/heads/master
Commit: 088870ebb062011b88a0742c0fa73d81e4833356
Parents: 8b422da
Author: benwa <bt...@linagora.com>
Authored: Tue Jun 5 10:26:22 2018 +0700
Committer: benwa <bt...@linagora.com>
Committed: Tue Jun 5 10:26:22 2018 +0700
----------------------------------------------------------------------
pom.xml | 2 +-
.../apache/james/webadmin/WebAdminUtils.java | 8 ---
.../webadmin/routes/DomainQuotaRoutesTest.java | 21 +------
.../ElasticSearchQuotaSearchExtension.java | 18 +-----
.../webadmin/routes/GlobalQuotaRoutesTest.java | 17 +-----
.../routes/ScanningQuotaSearchExtension.java | 31 +----------
.../webadmin/routes/UserQuotaRoutesTest.java | 58 +++++---------------
.../routes/WebAdminQuotaSearchTestSystem.java | 38 +++++++++++--
8 files changed, 54 insertions(+), 139 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/088870eb/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 91dfb14..baece46 100644
--- a/pom.xml
+++ b/pom.xml
@@ -617,7 +617,7 @@
<dnsjava.version>2.1.1</dnsjava.version>
<junit.version>4.11</junit.version>
- <junit.jupiter.version>5.2.0</junit.jupiter.version>
+ <junit.jupiter.version>5.0.2</junit.jupiter.version>
<junit.plateform.version>1.0.2</junit.plateform.version>
<junit.vintage.version>4.12.2</junit.vintage.version>
<jmock.version>2.6.0</jmock.version>
http://git-wip-us.apache.org/repos/asf/james-project/blob/088870eb/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/WebAdminUtils.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/WebAdminUtils.java b/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/WebAdminUtils.java
index a0bf474..f4f95ff 100644
--- a/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/WebAdminUtils.java
+++ b/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/WebAdminUtils.java
@@ -24,13 +24,11 @@ import static com.jayway.restassured.config.RestAssuredConfig.newConfig;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
-import java.util.List;
import org.apache.james.metrics.api.MetricFactory;
import org.apache.james.util.Port;
import org.apache.james.webadmin.authentication.NoAuthenticationFilter;
-import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.jayway.restassured.builder.RequestSpecBuilder;
import com.jayway.restassured.http.ContentType;
@@ -38,12 +36,6 @@ import com.jayway.restassured.http.ContentType;
public class WebAdminUtils {
public static WebAdminServer createWebAdminServer(MetricFactory metricFactory, Routes... routes) throws IOException {
- return createWebAdminServer(
- metricFactory,
- ImmutableList.copyOf(routes));
- }
-
- public static WebAdminServer createWebAdminServer(MetricFactory metricFactory, List<Routes> routes) throws IOException {
return new WebAdminServer(WebAdminConfiguration.TEST_CONFIGURATION,
ImmutableSet.copyOf(routes),
new NoAuthenticationFilter(),
http://git-wip-us.apache.org/repos/asf/james-project/blob/088870eb/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/DomainQuotaRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/DomainQuotaRoutesTest.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/DomainQuotaRoutesTest.java
index 2b68977..b27c0d6 100644
--- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/DomainQuotaRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/DomainQuotaRoutesTest.java
@@ -29,34 +29,17 @@ import org.apache.james.core.Domain;
import org.apache.james.mailbox.quota.MaxQuotaManager;
import org.apache.james.mailbox.quota.QuotaCount;
import org.apache.james.mailbox.quota.QuotaSize;
-import org.apache.james.quota.search.QuotaSearchTestSystem;
-import org.apache.james.webadmin.jackson.QuotaModule;
-import org.apache.james.webadmin.service.DomainQuotaService;
-import org.apache.james.webadmin.utils.JsonTransformer;
import org.eclipse.jetty.http.HttpStatus;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.Extension;
-import org.junit.jupiter.api.extension.RegisterExtension;
+import org.junit.jupiter.api.extension.ExtendWith;
-import com.google.common.collect.ImmutableSet;
import com.jayway.restassured.RestAssured;
import com.jayway.restassured.http.ContentType;
import com.jayway.restassured.path.json.JsonPath;
+@ExtendWith(ScanningQuotaSearchExtension.class)
class DomainQuotaRoutesTest {
- @RegisterExtension
- Extension scanningExtension = new ScanningQuotaSearchExtension(this::createDomainQuotaRoutes);
-
- private DomainQuotaRoutes createDomainQuotaRoutes(QuotaSearchTestSystem testSystem) {
- QuotaModule quotaModule = new QuotaModule();
- return new DomainQuotaRoutes(
- testSystem.getDomainList(),
- new DomainQuotaService(testSystem.getMaxQuotaManager()),
- testSystem.getUsersRepository(),
- new JsonTransformer(quotaModule),
- ImmutableSet.of(quotaModule));
- }
private static final String QUOTA_DOMAINS = "/quota/domains";
private static final String PERDU_COM = "perdu.com";
http://git-wip-us.apache.org/repos/asf/james-project/blob/088870eb/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java
index d5f5c3a..d9a9e24 100644
--- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java
+++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java
@@ -38,9 +38,6 @@ import org.apache.james.quota.search.elasticsearch.QuotaSearchIndexCreationUtil;
import org.apache.james.quota.search.elasticsearch.events.ElasticSearchQuotaMailboxListener;
import org.apache.james.quota.search.elasticsearch.json.QuotaRatioToElasticSearchJson;
import org.apache.james.user.memory.MemoryUsersRepository;
-import org.apache.james.webadmin.jackson.QuotaModule;
-import org.apache.james.webadmin.service.UserQuotaService;
-import org.apache.james.webadmin.utils.JsonTransformer;
import org.elasticsearch.client.Client;
import org.junit.jupiter.api.extension.AfterEachCallback;
import org.junit.jupiter.api.extension.BeforeEachCallback;
@@ -50,9 +47,6 @@ import org.junit.jupiter.api.extension.ParameterResolutionException;
import org.junit.jupiter.api.extension.ParameterResolver;
import org.junit.rules.TemporaryFolder;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableSet;
-
public class ElasticSearchQuotaSearchExtension implements ParameterResolver, BeforeEachCallback, AfterEachCallback {
private WebAdminQuotaSearchTestSystem restQuotaSearchTestSystem;
@@ -97,17 +91,7 @@ public class ElasticSearchQuotaSearchExtension implements ParameterResolver, Bef
resources.getCurrentQuotaManager(),
() -> embeddedElasticSearch.awaitForElasticSearch());
- UserQuotaRoutes routes = new UserQuotaRoutes(
- quotaSearchTestSystem.getUsersRepository(),
- new UserQuotaService(
- quotaSearchTestSystem.getMaxQuotaManager(),
- quotaSearchTestSystem.getQuotaManager(),
- quotaSearchTestSystem.getQuotaRootResolver(),
- quotaSearchTestSystem.getQuotaSearcher()),
- new JsonTransformer(new QuotaModule()),
- ImmutableSet.of(new QuotaModule()));
-
- restQuotaSearchTestSystem = new WebAdminQuotaSearchTestSystem(quotaSearchTestSystem, ImmutableList.of(routes));
+ restQuotaSearchTestSystem = new WebAdminQuotaSearchTestSystem(quotaSearchTestSystem);
} catch (Exception e) {
throw new ParameterResolutionException("Error while resolving parameter", e);
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/088870eb/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/GlobalQuotaRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/GlobalQuotaRoutesTest.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/GlobalQuotaRoutesTest.java
index 1b7e306..cb3380d 100644
--- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/GlobalQuotaRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/GlobalQuotaRoutesTest.java
@@ -28,31 +28,18 @@ import java.util.Map;
import org.apache.james.mailbox.quota.MaxQuotaManager;
import org.apache.james.mailbox.quota.QuotaCount;
import org.apache.james.mailbox.quota.QuotaSize;
-import org.apache.james.quota.search.QuotaSearchTestSystem;
-import org.apache.james.webadmin.jackson.QuotaModule;
-import org.apache.james.webadmin.service.GlobalQuotaService;
-import org.apache.james.webadmin.utils.JsonTransformer;
import org.assertj.core.api.SoftAssertions;
import org.eclipse.jetty.http.HttpStatus;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.Extension;
-import org.junit.jupiter.api.extension.RegisterExtension;
+import org.junit.jupiter.api.extension.ExtendWith;
import com.jayway.restassured.RestAssured;
import com.jayway.restassured.http.ContentType;
import com.jayway.restassured.path.json.JsonPath;
+@ExtendWith(ScanningQuotaSearchExtension.class)
class GlobalQuotaRoutesTest {
- @RegisterExtension
- Extension scanningExtension = new ScanningQuotaSearchExtension(this::createGlobalQuotaRoutes);
-
- private GlobalQuotaRoutes createGlobalQuotaRoutes(QuotaSearchTestSystem testSystem) {
- return new GlobalQuotaRoutes(
- new GlobalQuotaService(testSystem.getMaxQuotaManager()),
- new JsonTransformer(new QuotaModule()));
- }
-
private MaxQuotaManager maxQuotaManager;
@BeforeEach
http://git-wip-us.apache.org/repos/asf/james-project/blob/088870eb/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ScanningQuotaSearchExtension.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ScanningQuotaSearchExtension.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ScanningQuotaSearchExtension.java
index 8f1d71c..af69584 100644
--- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ScanningQuotaSearchExtension.java
+++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ScanningQuotaSearchExtension.java
@@ -21,9 +21,6 @@ package org.apache.james.webadmin.routes;
import static org.mockito.Mockito.mock;
-import java.util.List;
-import java.util.function.Function;
-
import org.apache.commons.configuration.DefaultConfigurationBuilder;
import org.apache.james.dnsservice.api.DNSService;
import org.apache.james.domainlist.memory.MemoryDomainList;
@@ -33,7 +30,6 @@ import org.apache.james.quota.search.QuotaSearchTestSystem;
import org.apache.james.quota.search.scanning.ClauseConverter;
import org.apache.james.quota.search.scanning.ScanningQuotaSearcher;
import org.apache.james.user.memory.MemoryUsersRepository;
-import org.apache.james.webadmin.Routes;
import org.junit.jupiter.api.extension.AfterEachCallback;
import org.junit.jupiter.api.extension.BeforeEachCallback;
import org.junit.jupiter.api.extension.ExtensionContext;
@@ -41,21 +37,10 @@ import org.junit.jupiter.api.extension.ParameterContext;
import org.junit.jupiter.api.extension.ParameterResolutionException;
import org.junit.jupiter.api.extension.ParameterResolver;
-import com.github.steveash.guavate.Guavate;
-import com.google.common.collect.ImmutableList;
-import com.jayway.restassured.specification.RequestSpecification;
-
public class ScanningQuotaSearchExtension implements ParameterResolver, BeforeEachCallback, AfterEachCallback {
private static final Runnable NO_AWAIT = () -> { };
- private final List<Function<QuotaSearchTestSystem, Routes>> routesGenerators;
private WebAdminQuotaSearchTestSystem restQuotaSearchTestSystem;
- private QuotaSearchTestSystem quotaSearchTestSystem;
-
- @SafeVarargs
- public ScanningQuotaSearchExtension(Function<QuotaSearchTestSystem, Routes>... routesGenerators) {
- this.routesGenerators = ImmutableList.copyOf(routesGenerators);
- }
@Override
public void beforeEach(ExtensionContext context) {
@@ -69,7 +54,7 @@ public class ScanningQuotaSearchExtension implements ParameterResolver, BeforeEa
domainList.configure(new DefaultConfigurationBuilder());
usersRepository.setDomainList(domainList);
- quotaSearchTestSystem = new QuotaSearchTestSystem(
+ QuotaSearchTestSystem quotaSearchTestSystem = new QuotaSearchTestSystem(
resources.getMaxQuotaManager(),
resources.getMailboxManager(),
resources.getQuotaManager(),
@@ -81,11 +66,7 @@ public class ScanningQuotaSearchExtension implements ParameterResolver, BeforeEa
resources.getCurrentQuotaManager(),
NO_AWAIT);
- List<Routes> routes = routesGenerators.stream()
- .map(generator -> generator.apply(quotaSearchTestSystem))
- .collect(Guavate.toImmutableList());
-
- restQuotaSearchTestSystem = new WebAdminQuotaSearchTestSystem(quotaSearchTestSystem, routes);
+ restQuotaSearchTestSystem = new WebAdminQuotaSearchTestSystem(quotaSearchTestSystem);
} catch (Exception e) {
throw new ParameterResolutionException("Error while resolving parameter", e);
}
@@ -105,12 +86,4 @@ public class ScanningQuotaSearchExtension implements ParameterResolver, BeforeEa
public Object resolveParameter(ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException {
return restQuotaSearchTestSystem;
}
-
- public QuotaSearchTestSystem getQuotaSearchTestSystem() {
- return quotaSearchTestSystem;
- }
-
- public RequestSpecification getRequestSpecification() {
- return restQuotaSearchTestSystem.getRequestSpecification();
- }
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/088870eb/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserQuotaRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserQuotaRoutesTest.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserQuotaRoutesTest.java
index d521b5a..694cea4 100644
--- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserQuotaRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserQuotaRoutesTest.java
@@ -48,20 +48,15 @@ import org.apache.james.mailbox.quota.QuotaSize;
import org.apache.james.mailbox.quota.UserQuotaRootResolver;
import org.apache.james.quota.search.QuotaSearchTestSystem;
import org.apache.james.user.api.UsersRepository;
-import org.apache.james.webadmin.jackson.QuotaModule;
-import org.apache.james.webadmin.service.UserQuotaService;
-import org.apache.james.webadmin.utils.JsonTransformer;
import org.assertj.core.api.SoftAssertions;
import org.eclipse.jetty.http.HttpStatus;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.Extension;
-import org.junit.jupiter.api.extension.RegisterExtension;
+import org.junit.jupiter.api.extension.ExtendWith;
import com.google.common.base.Strings;
-import com.google.common.collect.ImmutableSet;
import com.jayway.restassured.RestAssured;
import com.jayway.restassured.http.ContentType;
import com.jayway.restassured.path.json.JsonPath;
@@ -80,20 +75,6 @@ class UserQuotaRoutesTest {
private static final String COUNT = "count";
private static final String SIZE = "size";
- private final ScanningQuotaSearchExtension scanningExtension = new ScanningQuotaSearchExtension(this::createUserQuotaRoutes);
-
- private UserQuotaRoutes createUserQuotaRoutes(QuotaSearchTestSystem testSystem) {
- QuotaModule quotaModule = new QuotaModule();
- return new UserQuotaRoutes(testSystem.getUsersRepository(),
- new UserQuotaService(
- testSystem.getMaxQuotaManager(),
- testSystem.getQuotaManager(),
- testSystem.getQuotaRootResolver(),
- testSystem.getQuotaSearcher()),
- new JsonTransformer(quotaModule),
- ImmutableSet.of(quotaModule));
- }
-
@BeforeEach
public void setUp(WebAdminQuotaSearchTestSystem testSystem) throws Exception {
DomainList domainList = testSystem.getQuotaSearchTestSystem().getDomainList();
@@ -469,21 +450,20 @@ class UserQuotaRoutesTest {
}
@Nested
+ @ExtendWith(ScanningQuotaSearchExtension.class)
class ScanningGetUsersQuotaRouteTest implements GetUsersQuotaRouteContract {
- @RegisterExtension
- Extension registeredExtension = scanningExtension;
+
}
@Nested
+ @ExtendWith(ElasticSearchQuotaSearchExtension.class)
class ElasticSearchGetUsersQuotaRouteTest implements GetUsersQuotaRouteContract {
- @RegisterExtension
- Extension registeredExtension = new ElasticSearchQuotaSearchExtension();
+
}
@Nested
+ @ExtendWith(ScanningQuotaSearchExtension.class)
class GetCount {
- @RegisterExtension
- Extension registeredExtension = scanningExtension;
@Test
void getCountShouldReturnNotFoundWhenUserDoesntExist() {
@@ -523,10 +503,8 @@ class UserQuotaRoutesTest {
}
@Nested
+ @ExtendWith(ScanningQuotaSearchExtension.class)
class GetSize {
- @RegisterExtension
- Extension registeredExtension = scanningExtension;
-
@Test
void getSizeShouldReturnNotFoundWhenUserDoesntExist() {
when()
@@ -566,10 +544,8 @@ class UserQuotaRoutesTest {
}
@Nested
+ @ExtendWith(ScanningQuotaSearchExtension.class)
class PutCount {
- @RegisterExtension
- Extension registeredExtension = scanningExtension;
-
@Test
void putCountShouldReturnNotFoundWhenUserDoesntExist() {
given()
@@ -674,10 +650,8 @@ class UserQuotaRoutesTest {
}
@Nested
+ @ExtendWith(ScanningQuotaSearchExtension.class)
class PutSize {
- @RegisterExtension
- Extension registeredExtension = scanningExtension;
-
@Test
void putSizeAcceptEscapedUsers() {
given()
@@ -768,9 +742,8 @@ class UserQuotaRoutesTest {
}
@Nested
+ @ExtendWith(ScanningQuotaSearchExtension.class)
class DeleteCount {
- @RegisterExtension
- Extension registeredExtension = scanningExtension;
@Test
void deleteCountShouldReturnNotFoundWhenUserDoesntExist() {
@@ -796,10 +769,8 @@ class UserQuotaRoutesTest {
}
@Nested
+ @ExtendWith(ScanningQuotaSearchExtension.class)
class DeleteSize {
- @RegisterExtension
- Extension registeredExtension = scanningExtension;
-
@Test
void deleteSizeShouldReturnNotFoundWhenUserDoesntExist() {
when()
@@ -825,10 +796,8 @@ class UserQuotaRoutesTest {
}
@Nested
+ @ExtendWith(ScanningQuotaSearchExtension.class)
class GetQuota {
- @RegisterExtension
- Extension registeredExtension = scanningExtension;
-
@Test
void getQuotaShouldReturnNotFoundWhenUserDoesntExist() {
when()
@@ -1073,9 +1042,8 @@ class UserQuotaRoutesTest {
}
@Nested
+ @ExtendWith(ScanningQuotaSearchExtension.class)
class PutQuota {
- @RegisterExtension
- Extension registeredExtension = scanningExtension;
@Test
void putQuotaShouldReturnNotFoundWhenUserDoesntExist() {
http://git-wip-us.apache.org/repos/asf/james-project/blob/088870eb/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/WebAdminQuotaSearchTestSystem.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/WebAdminQuotaSearchTestSystem.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/WebAdminQuotaSearchTestSystem.java
index d9a1893..75f8d26 100644
--- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/WebAdminQuotaSearchTestSystem.java
+++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/WebAdminQuotaSearchTestSystem.java
@@ -21,14 +21,17 @@ package org.apache.james.webadmin.routes;
import static org.apache.james.webadmin.WebAdminServer.NO_CONFIGURATION;
-import java.util.List;
-
import org.apache.james.metrics.api.NoopMetricFactory;
import org.apache.james.quota.search.QuotaSearchTestSystem;
-import org.apache.james.webadmin.Routes;
import org.apache.james.webadmin.WebAdminServer;
import org.apache.james.webadmin.WebAdminUtils;
+import org.apache.james.webadmin.jackson.QuotaModule;
+import org.apache.james.webadmin.service.DomainQuotaService;
+import org.apache.james.webadmin.service.GlobalQuotaService;
+import org.apache.james.webadmin.service.UserQuotaService;
+import org.apache.james.webadmin.utils.JsonTransformer;
+import com.google.common.collect.ImmutableSet;
import com.jayway.restassured.specification.RequestSpecification;
public class WebAdminQuotaSearchTestSystem {
@@ -36,9 +39,34 @@ public class WebAdminQuotaSearchTestSystem {
private final WebAdminServer webAdminServer;
private final RequestSpecification requestSpecBuilder;
- public WebAdminQuotaSearchTestSystem(QuotaSearchTestSystem quotaSearchTestSystem, List<Routes> routes) throws Exception {
+ public WebAdminQuotaSearchTestSystem(QuotaSearchTestSystem quotaSearchTestSystem) throws Exception {
this.quotaSearchTestSystem = quotaSearchTestSystem;
- this.webAdminServer = WebAdminUtils.createWebAdminServer(new NoopMetricFactory(), routes);
+
+ UserQuotaService userQuotaService = new UserQuotaService(quotaSearchTestSystem.getMaxQuotaManager(),
+ quotaSearchTestSystem.getQuotaManager(),
+ quotaSearchTestSystem.getQuotaRootResolver(),
+ quotaSearchTestSystem.getQuotaSearcher());
+
+ QuotaModule quotaModule = new QuotaModule();
+ JsonTransformer jsonTransformer = new JsonTransformer(quotaModule);
+ UserQuotaRoutes userQuotaRoutes = new UserQuotaRoutes(quotaSearchTestSystem.getUsersRepository(),
+ userQuotaService, jsonTransformer,
+ ImmutableSet.of(quotaModule));
+ DomainQuotaRoutes domainQuotaRoutes = new DomainQuotaRoutes(
+ quotaSearchTestSystem.getDomainList(),
+ new DomainQuotaService(quotaSearchTestSystem.getMaxQuotaManager()),
+ quotaSearchTestSystem.getUsersRepository(),
+ jsonTransformer,
+ ImmutableSet.of(quotaModule));
+ GlobalQuotaRoutes globalQuotaRoutes = new GlobalQuotaRoutes(
+ new GlobalQuotaService(quotaSearchTestSystem.getMaxQuotaManager()),
+ jsonTransformer);
+
+ this.webAdminServer = WebAdminUtils.createWebAdminServer(
+ new NoopMetricFactory(),
+ userQuotaRoutes,
+ domainQuotaRoutes,
+ globalQuotaRoutes);
this.webAdminServer.configure(NO_CONFIGURATION);
this.webAdminServer.await();
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org