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/01/25 05:02:19 UTC
[08/16] james-project git commit: JAMES-2293 Webadmin utils should
return a ready to use webadmin server
JAMES-2293 Webadmin utils should return a ready to use webadmin server
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/abf91be4
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/abf91be4
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/abf91be4
Branch: refs/heads/master
Commit: abf91be4c6cd82bcad087157f072c09e7db1bfe4
Parents: 3cdb5ad
Author: benwa <bt...@linagora.com>
Authored: Mon Jan 22 15:22:29 2018 +0700
Committer: benwa <bt...@linagora.com>
Committed: Thu Jan 25 11:39:29 2018 +0700
----------------------------------------------------------------------
server/container/guice/cassandra-guice/pom.xml | 6 ++
.../apache/james/FixingGhostMailboxTest.java | 22 +++---
.../apache/james/utils/WebAdminGuiceProbe.java | 5 +-
.../transport/mailets/GroupMappingTest.java | 65 +++++++++--------
.../integration/JwtFilterIntegrationTest.java | 15 +---
.../WebAdminServerIntegrationTest.java | 73 +++++---------------
.../routes/CassandraMigrationRoutesTest.java | 2 +-
.../apache/james/webadmin/WebAdminUtils.java | 8 ++-
.../james/webadmin/routes/TasksRoutesTest.java | 2 +-
.../webadmin/routes/DomainsRoutesTest.java | 2 +-
.../james/webadmin/routes/GroupsRoutesTest.java | 2 +-
.../james/webadmin/routes/UsersRoutesTest.java | 2 +-
.../webadmin/routes/GlobalQuotaRoutesTest.java | 2 +-
.../routes/UserMailboxesRoutesTest.java | 2 +-
.../routes/MailRepositoriesRoutesTest.java | 2 +-
15 files changed, 88 insertions(+), 122 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/container/guice/cassandra-guice/pom.xml
----------------------------------------------------------------------
diff --git a/server/container/guice/cassandra-guice/pom.xml b/server/container/guice/cassandra-guice/pom.xml
index fc3bd28..77c4239 100644
--- a/server/container/guice/cassandra-guice/pom.xml
+++ b/server/container/guice/cassandra-guice/pom.xml
@@ -190,6 +190,12 @@
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
+ <artifactId>james-server-webadmin-core</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
<artifactId>metrics-es-reporter</artifactId>
<version>${project.version}</version>
</dependency>
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/container/guice/cassandra-guice/src/test/java/org/apache/james/FixingGhostMailboxTest.java
----------------------------------------------------------------------
diff --git a/server/container/guice/cassandra-guice/src/test/java/org/apache/james/FixingGhostMailboxTest.java b/server/container/guice/cassandra-guice/src/test/java/org/apache/james/FixingGhostMailboxTest.java
index 9b3220b..036ee10 100644
--- a/server/container/guice/cassandra-guice/src/test/java/org/apache/james/FixingGhostMailboxTest.java
+++ b/server/container/guice/cassandra-guice/src/test/java/org/apache/james/FixingGhostMailboxTest.java
@@ -69,6 +69,7 @@ import org.apache.james.utils.JmapGuiceProbe;
import org.apache.james.utils.WebAdminGuiceProbe;
import org.apache.james.webadmin.RandomPortSupplier;
import org.apache.james.webadmin.WebAdminConfiguration;
+import org.apache.james.webadmin.WebAdminUtils;
import org.apache.james.webadmin.routes.CassandraMailboxMergingRoutes;
import org.apache.james.webadmin.routes.TasksRoutes;
import org.junit.After;
@@ -84,6 +85,7 @@ import com.google.common.base.Charsets;
import com.jayway.restassured.RestAssured;
import com.jayway.restassured.builder.RequestSpecBuilder;
import com.jayway.restassured.http.ContentType;
+import com.jayway.restassured.specification.RequestSpecification;
public class FixingGhostMailboxTest {
@@ -119,6 +121,7 @@ public class FixingGhostMailboxTest {
private MailboxPath aliceInboxPath;
private ComposedMessageId message2;
private WebAdminGuiceProbe webAdminProbe;
+ private RequestSpecification webadminSpecification;
@Before
public void setup() throws Throwable {
@@ -140,6 +143,8 @@ public class FixingGhostMailboxTest {
.setPort(jmapServer.getProbe(JmapGuiceProbe.class).getJmapPort())
.build();
RestAssured.enableLoggingOfRequestAndResponseIfValidationFails();
+ webadminSpecification = WebAdminUtils.buildRequestSpecification(webAdminProbe.getWebAdminPort())
+ .build();
domain = "domain.tld";
alice = "alice@" + domain;
@@ -298,8 +303,8 @@ public class FixingGhostMailboxTest {
String taskId = fixGhostMailboxes(newAliceInbox);
- given()
- .port(webAdminProbe.getWebAdminPort())
+ with()
+ .spec(webadminSpecification)
.basePath(TasksRoutes.BASE)
.when()
.get(taskId + "/await")
@@ -315,22 +320,21 @@ public class FixingGhostMailboxTest {
.body("submitDate", is(not(nullValue())))
.body("startedDate", is(not(nullValue())))
.body("completedDate", is(not(nullValue())));
-
}
private String fixGhostMailboxes(Mailbox newAliceInbox) {
- String taskId = with()
- .port(webAdminProbe.getWebAdminPort())
- .basePath(CassandraMailboxMergingRoutes.BASE)
+ String taskId = given()
+ .spec(webadminSpecification)
.body("{" +
" \"mergeOrigin\":\"" + aliceGhostInboxId.serialize() + "\"," +
" \"mergeDestination\":\"" + newAliceInbox.getMailboxId().serialize() + "\"" +
"}")
- .post()
+ .post(CassandraMailboxMergingRoutes.BASE)
.jsonPath()
.getString("taskId");
- with()
- .port(webAdminProbe.getWebAdminPort())
+
+ given()
+ .spec(webadminSpecification)
.basePath(TasksRoutes.BASE)
.get(taskId + "/await");
rule.await();
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/container/guice/protocols/webadmin/src/main/java/org/apache/james/utils/WebAdminGuiceProbe.java
----------------------------------------------------------------------
diff --git a/server/container/guice/protocols/webadmin/src/main/java/org/apache/james/utils/WebAdminGuiceProbe.java b/server/container/guice/protocols/webadmin/src/main/java/org/apache/james/utils/WebAdminGuiceProbe.java
index 9caa85f..7b0528b 100644
--- a/server/container/guice/protocols/webadmin/src/main/java/org/apache/james/utils/WebAdminGuiceProbe.java
+++ b/server/container/guice/protocols/webadmin/src/main/java/org/apache/james/utils/WebAdminGuiceProbe.java
@@ -21,6 +21,7 @@ package org.apache.james.utils;
import javax.inject.Inject;
+import org.apache.james.webadmin.PortSupplier;
import org.apache.james.webadmin.WebAdminServer;
public class WebAdminGuiceProbe implements GuiceProbe {
@@ -31,8 +32,8 @@ public class WebAdminGuiceProbe implements GuiceProbe {
this.webAdminServer = webAdminServer;
}
- public int getWebAdminPort() {
- return webAdminServer.getPort().get().getValue();
+ public PortSupplier getWebAdminPort() {
+ return webAdminServer.getPort();
}
public void await() {
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/GroupMappingTest.java
----------------------------------------------------------------------
diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/GroupMappingTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/GroupMappingTest.java
index dbcdf8e..1ccaf61 100644
--- a/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/GroupMappingTest.java
+++ b/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/GroupMappingTest.java
@@ -19,6 +19,7 @@
package org.apache.james.transport.mailets;
+import static com.jayway.restassured.RestAssured.given;
import static org.apache.james.mailets.configuration.Constants.DEFAULT_DOMAIN;
import static org.apache.james.mailets.configuration.Constants.IMAP_PORT;
import static org.apache.james.mailets.configuration.Constants.LOCALHOST_IP;
@@ -47,6 +48,7 @@ import org.apache.james.utils.FakeSmtp;
import org.apache.james.utils.IMAPMessageReader;
import org.apache.james.utils.SMTPMessageSender;
import org.apache.james.utils.WebAdminGuiceProbe;
+import org.apache.james.webadmin.WebAdminUtils;
import org.apache.james.webadmin.routes.GroupsRoutes;
import org.apache.mailet.base.test.FakeMail;
import org.junit.After;
@@ -55,7 +57,6 @@ import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
-import com.jayway.restassured.RestAssured;
import com.jayway.restassured.specification.RequestSpecification;
public class GroupMappingTest {
@@ -73,7 +74,7 @@ public class GroupMappingTest {
private TemporaryJamesServer jamesServer;
private MimeMessage message;
private DataProbe dataProbe;
- private RequestSpecification restApiRequest;
+ private RequestSpecification webAdminApi;
@Rule
public final FakeSmtp fakeSmtp = new FakeSmtp();
@@ -119,8 +120,8 @@ public class GroupMappingTest {
WebAdminGuiceProbe webAdminGuiceProbe = jamesServer.getProbe(WebAdminGuiceProbe.class);
webAdminGuiceProbe.await();
- restApiRequest = RestAssured.given()
- .port(webAdminGuiceProbe.getWebAdminPort());
+ webAdminApi = given()
+ .spec(WebAdminUtils.buildRequestSpecification(webAdminGuiceProbe.getWebAdminPort()).build());
message = MimeMessageBuilder.mimeMessageBuilder()
.setSubject("test")
@@ -135,7 +136,7 @@ public class GroupMappingTest {
@Test
public void messageShouldRedirectToUserWhenBelongingToGroup() throws Exception {
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -153,7 +154,7 @@ public class GroupMappingTest {
@Test
public void messageShouldRedirectToUserDoesNotHaveSameDomainWhenBelongingToGroup() throws Exception {
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN2);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN2);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -171,9 +172,9 @@ public class GroupMappingTest {
@Test
public void messageShouldRedirectToAllUsersBelongingToGroup() throws Exception {
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN2);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN2);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -194,9 +195,9 @@ public class GroupMappingTest {
@Test
public void messageShouldRedirectWhenGroupBelongingToAnotherGroup() throws Exception {
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + USER_DOMAIN2);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + USER_DOMAIN2);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + GROUP_ON_DOMAIN2);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + GROUP_ON_DOMAIN2);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -214,11 +215,11 @@ public class GroupMappingTest {
@Test
public void messageShouldNotBeDuplicatedWhenUserBelongingToTwoGroups() throws Exception {
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + USER_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + USER_DOMAIN1);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + GROUP_ON_DOMAIN2);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + GROUP_ON_DOMAIN2);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -235,7 +236,7 @@ public class GroupMappingTest {
@Test
public void messageShouldNotBeDuplicatedWhenRecipientIsAlsoPartOfGroup() throws Exception {
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -252,11 +253,11 @@ public class GroupMappingTest {
@Test
public void groupMappingShouldSupportTreeStructure() throws Exception {
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + USER_DOMAIN2);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + USER_DOMAIN2);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + GROUP_ON_DOMAIN2);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + GROUP_ON_DOMAIN2);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -278,13 +279,13 @@ public class GroupMappingTest {
@Test
public void messageShouldNotBeSentWhenGroupLoopMapping() throws Exception {
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + USER_DOMAIN2);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + USER_DOMAIN2);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + GROUP_ON_DOMAIN2);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + GROUP_ON_DOMAIN2);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + GROUP_ON_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + GROUP_ON_DOMAIN1);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -308,7 +309,7 @@ public class GroupMappingTest {
public void messageShouldRedirectToUserWhenDomainMapping() throws Exception {
dataProbe.addDomainAliasMapping(DOMAIN1, DOMAIN2);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -327,7 +328,7 @@ public class GroupMappingTest {
public void messageShouldNotSendToUserBelongingToGroupWhenDomainMapping() throws Exception {
dataProbe.addDomainAliasMapping(DOMAIN1, DOMAIN2);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + USER_DOMAIN1);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -346,7 +347,7 @@ public class GroupMappingTest {
public void messageShouldRedirectToGroupWhenDomainMapping() throws Exception {
dataProbe.addDomainAliasMapping(DOMAIN1, DOMAIN2);
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + USER_DOMAIN2);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN2 + "/" + USER_DOMAIN2);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -365,7 +366,7 @@ public class GroupMappingTest {
public void messageShouldRedirectToGroupContainingSlash() throws Exception {
String groupWithSlash = "a/a@" + DOMAIN1;
String groupWithEncodedSlash = "a%2Fa@" + DOMAIN1;
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + groupWithEncodedSlash + "/" + USER_DOMAIN1);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + groupWithEncodedSlash + "/" + USER_DOMAIN1);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -385,7 +386,7 @@ public class GroupMappingTest {
String userWithSlash = "a/a@" + DOMAIN1;
dataProbe.addUser(userWithSlash, PASSWORD);
String userWithEncodedSlash = "a%2Fa@" + DOMAIN1;
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + userWithEncodedSlash);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + userWithEncodedSlash);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -404,7 +405,7 @@ public class GroupMappingTest {
public void messageShouldRedirectToUserWhenEncodingAt() throws Exception {
String userWithEncodedAt = "user%40" + DOMAIN1;
String groupWithEncodedAt = "group%40" + DOMAIN1;
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + groupWithEncodedAt + "/" + userWithEncodedAt);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + groupWithEncodedAt + "/" + userWithEncodedAt);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -422,7 +423,7 @@ public class GroupMappingTest {
@Test
public void sendMessageShouldSendAMessageToAnExternalGroupMember() throws Exception {
String externalMail = "ray@yopmail.com";
- restApiRequest.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + externalMail);
+ webAdminApi.put(GroupsRoutes.ROOT_PATH + "/" + GROUP_ON_DOMAIN1 + "/" + externalMail);
messageSender.connect(LOCALHOST_IP, SMTP_PORT)
.sendMessage(FakeMail.builder()
@@ -432,10 +433,8 @@ public class GroupMappingTest {
.awaitSent(awaitOneMinute);
fakeSmtp.isReceived(response -> response
- .body("[0].from", equalTo(SENDER))
- .body("[0].to[0]", equalTo(externalMail))
- .body("[0].text", equalTo(MESSAGE_CONTENT)));
-
-
+ .body("[0].from", equalTo(SENDER))
+ .body("[0].to[0]", equalTo(externalMail))
+ .body("[0].text", equalTo(MESSAGE_CONTENT)));
}
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/JwtFilterIntegrationTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/JwtFilterIntegrationTest.java b/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/JwtFilterIntegrationTest.java
index 4ba097c..116f849 100644
--- a/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/JwtFilterIntegrationTest.java
+++ b/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/JwtFilterIntegrationTest.java
@@ -20,12 +20,9 @@
package org.apache.james.webadmin.integration;
import static com.jayway.restassured.RestAssured.given;
-import static com.jayway.restassured.config.EncoderConfig.encoderConfig;
-import static com.jayway.restassured.config.RestAssuredConfig.newConfig;
import static org.apache.james.webadmin.Constants.SEPARATOR;
import static org.assertj.core.api.Assertions.assertThat;
-import java.nio.charset.StandardCharsets;
import java.util.Optional;
import org.apache.james.CassandraJmapTestRule;
@@ -35,6 +32,7 @@ import org.apache.james.jwt.JwtConfiguration;
import org.apache.james.util.ClassLoaderUtils;
import org.apache.james.utils.DataProbeImpl;
import org.apache.james.utils.WebAdminGuiceProbe;
+import org.apache.james.webadmin.WebAdminUtils;
import org.apache.james.webadmin.authentication.AuthenticationFilter;
import org.apache.james.webadmin.authentication.JwtFilter;
import org.apache.james.webadmin.routes.DomainsRoutes;
@@ -46,8 +44,6 @@ import org.junit.Rule;
import org.junit.Test;
import com.jayway.restassured.RestAssured;
-import com.jayway.restassured.builder.RequestSpecBuilder;
-import com.jayway.restassured.http.ContentType;
import com.jayway.restassured.response.Header;
public class JwtFilterIntegrationTest {
@@ -88,11 +84,7 @@ public class JwtFilterIntegrationTest {
dataProbe = guiceJamesServer.getProbe(DataProbeImpl.class);
webAdminGuiceProbe = guiceJamesServer.getProbe(WebAdminGuiceProbe.class);
- RestAssured.requestSpecification = new RequestSpecBuilder()
- .setContentType(ContentType.JSON)
- .setAccept(ContentType.JSON)
- .setConfig(newConfig().encoderConfig(encoderConfig().defaultContentCharset(StandardCharsets.UTF_8)))
- .build();
+ RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminGuiceProbe.getWebAdminPort()).build();
}
@After
@@ -103,7 +95,6 @@ public class JwtFilterIntegrationTest {
@Test
public void jwtAuthenticationShouldWork() throws Exception {
given()
- .port(webAdminGuiceProbe.getWebAdminPort())
.header(new Header("Authorization", "Bearer " + VALID_TOKEN_ADMIN_TRUE))
.when()
.put(SPECIFIC_DOMAIN)
@@ -117,7 +108,6 @@ public class JwtFilterIntegrationTest {
@Test
public void jwtShouldRejectNonAdminRequests() throws Exception {
given()
- .port(webAdminGuiceProbe.getWebAdminPort())
.header(new Header("Authorization", "Bearer " + VALID_TOKEN_ADMIN_FALSE))
.when()
.put(SPECIFIC_DOMAIN)
@@ -131,7 +121,6 @@ public class JwtFilterIntegrationTest {
@Test
public void jwtShouldRejectInvalidRequests() throws Exception {
given()
- .port(webAdminGuiceProbe.getWebAdminPort())
.header(new Header("Authorization", "Bearer invalid"))
.when()
.put(SPECIFIC_DOMAIN)
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/WebAdminServerIntegrationTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/WebAdminServerIntegrationTest.java b/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/WebAdminServerIntegrationTest.java
index 9ce9443..96d488d 100644
--- a/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/WebAdminServerIntegrationTest.java
+++ b/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/WebAdminServerIntegrationTest.java
@@ -20,9 +20,8 @@
package org.apache.james.webadmin.integration;
import static com.jayway.restassured.RestAssured.given;
+import static com.jayway.restassured.RestAssured.when;
import static com.jayway.restassured.RestAssured.with;
-import static com.jayway.restassured.config.EncoderConfig.encoderConfig;
-import static com.jayway.restassured.config.RestAssuredConfig.newConfig;
import static org.apache.james.webadmin.Constants.JSON_CONTENT_TYPE;
import static org.apache.james.webadmin.Constants.SEPARATOR;
import static org.assertj.core.api.Assertions.assertThat;
@@ -30,7 +29,6 @@ import static org.hamcrest.Matchers.containsInAnyOrder;
import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.is;
-import java.nio.charset.StandardCharsets;
import java.util.List;
import org.apache.james.CassandraJmapTestRule;
@@ -41,6 +39,7 @@ import org.apache.james.modules.MailboxProbeImpl;
import org.apache.james.probe.DataProbe;
import org.apache.james.utils.DataProbeImpl;
import org.apache.james.utils.WebAdminGuiceProbe;
+import org.apache.james.webadmin.WebAdminUtils;
import org.apache.james.webadmin.routes.DomainsRoutes;
import org.apache.james.webadmin.routes.MailRepositoriesRoutes;
import org.apache.james.webadmin.routes.UserMailboxesRoutes;
@@ -54,8 +53,6 @@ import org.junit.Rule;
import org.junit.Test;
import com.jayway.restassured.RestAssured;
-import com.jayway.restassured.builder.RequestSpecBuilder;
-import com.jayway.restassured.http.ContentType;
public class WebAdminServerIntegrationTest {
@@ -88,11 +85,8 @@ public class WebAdminServerIntegrationTest {
dataProbe = guiceJamesServer.getProbe(DataProbeImpl.class);
webAdminGuiceProbe = guiceJamesServer.getProbe(WebAdminGuiceProbe.class);
- RestAssured.requestSpecification = new RequestSpecBuilder()
- .setContentType(ContentType.JSON)
- .setAccept(ContentType.JSON)
- .setConfig(newConfig().encoderConfig(encoderConfig().defaultContentCharset(StandardCharsets.UTF_8)))
- .build();
+ RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminGuiceProbe.getWebAdminPort())
+ .build();
}
@After
@@ -102,9 +96,7 @@ public class WebAdminServerIntegrationTest {
@Test
public void postShouldAddTheGivenDomain() throws Exception {
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.put(SPECIFIC_DOMAIN)
.then()
.statusCode(HttpStatus.NO_CONTENT_204);
@@ -114,9 +106,7 @@ public class WebAdminServerIntegrationTest {
@Test
public void mailRepositoriesRoutesShouldBeExposed() throws Exception {
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.get(MailRepositoriesRoutes.MAIL_REPOSITORIES)
.then()
.statusCode(HttpStatus.OK_200)
@@ -131,9 +121,7 @@ public class WebAdminServerIntegrationTest {
public void deleteShouldRemoveTheGivenDomain() throws Exception {
dataProbe.addDomain(DOMAIN);
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.delete(SPECIFIC_DOMAIN)
.then()
.statusCode(HttpStatus.NO_CONTENT_204);
@@ -146,7 +134,6 @@ public class WebAdminServerIntegrationTest {
dataProbe.addDomain(DOMAIN);
given()
- .port(webAdminGuiceProbe.getWebAdminPort())
.body("{\"password\":\"password\"}")
.when()
.put(SPECIFIC_USER)
@@ -162,7 +149,6 @@ public class WebAdminServerIntegrationTest {
dataProbe.addUser(USERNAME, "anyPassword");
given()
- .port(webAdminGuiceProbe.getWebAdminPort())
.body("{\"username\":\"" + USERNAME + "\",\"password\":\"password\"}")
.when()
.delete(SPECIFIC_USER)
@@ -177,9 +163,7 @@ public class WebAdminServerIntegrationTest {
dataProbe.addDomain(DOMAIN);
dataProbe.addUser(USERNAME, "anyPassword");
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.get(UserRoutes.USERS)
.then()
.statusCode(HttpStatus.OK_200)
@@ -192,9 +176,7 @@ public class WebAdminServerIntegrationTest {
dataProbe.addDomain(DOMAIN);
dataProbe.addUser(USERNAME, "anyPassword");
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.put(SPECIFIC_MAILBOX)
.then()
.statusCode(HttpStatus.NO_CONTENT_204);
@@ -208,9 +190,7 @@ public class WebAdminServerIntegrationTest {
dataProbe.addUser(USERNAME, "anyPassword");
guiceJamesServer.getProbe(MailboxProbeImpl.class).createMailbox("#private", USERNAME, MAILBOX);
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.delete(SPECIFIC_MAILBOX)
.then()
.statusCode(HttpStatus.NO_CONTENT_204);
@@ -220,9 +200,7 @@ public class WebAdminServerIntegrationTest {
@Test
public void getCurrentVersionShouldReturnNullForCurrentVersionAsBeginning() throws Exception {
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.get(VERSION)
.then()
.statusCode(HttpStatus.OK_200)
@@ -232,9 +210,7 @@ public class WebAdminServerIntegrationTest {
@Test
public void getLatestVersionShouldReturnTheConfiguredLatestVersion() throws Exception {
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.get(VERSION_LATEST)
.then()
.statusCode(HttpStatus.OK_200)
@@ -245,19 +221,15 @@ public class WebAdminServerIntegrationTest {
@Test
public void postShouldDoMigrationAndUpdateCurrentVersion() throws Exception {
String taskId = with()
- .port(webAdminGuiceProbe.getWebAdminPort())
.body(String.valueOf(CassandraSchemaVersionManager.MAX_VERSION.getValue()))
.post(UPGRADE_VERSION)
.jsonPath()
.get("taskId");
with()
- .port(webAdminGuiceProbe.getWebAdminPort())
.get("/task/" + taskId + "/await");
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.get(VERSION)
.then()
.statusCode(HttpStatus.OK_200)
@@ -267,19 +239,14 @@ public class WebAdminServerIntegrationTest {
@Test
public void postShouldDoMigrationAndUpdateToTheLatestVersion() throws Exception {
- String taskId = with()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .post(UPGRADE_TO_LATEST_VERSION)
+ String taskId = with().post(UPGRADE_TO_LATEST_VERSION)
.jsonPath()
.get("taskId");
with()
- .port(webAdminGuiceProbe.getWebAdminPort())
.get("/task/" + taskId + "/await");
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.get(VERSION)
.then()
.statusCode(HttpStatus.OK_200)
@@ -292,11 +259,9 @@ public class WebAdminServerIntegrationTest {
dataProbe.addAddressMapping("group", "domain.com", "user1@domain.com");
dataProbe.addAddressMapping("group", "domain.com", "user2@domain.com");
- List<String> members = given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ List<String> members = when()
.get("/address/groups/group@domain.com")
- .then()
+ .then()
.statusCode(HttpStatus.OK_200)
.contentType(JSON_CONTENT_TYPE)
.extract()
@@ -307,9 +272,7 @@ public class WebAdminServerIntegrationTest {
@Test
public void getSwaggerShouldReturnJsonDataForSwagger() throws Exception {
- given()
- .port(webAdminGuiceProbe.getWebAdminPort())
- .when()
+ when()
.get(SwaggerRoutes.SWAGGER_ENDPOINT)
.then()
.statusCode(HttpStatus.OK_200)
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/protocols/webadmin/webadmin-cassandra/src/test/java/org/apache/james/webadmin/routes/CassandraMigrationRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-cassandra/src/test/java/org/apache/james/webadmin/routes/CassandraMigrationRoutesTest.java b/server/protocols/webadmin/webadmin-cassandra/src/test/java/org/apache/james/webadmin/routes/CassandraMigrationRoutesTest.java
index 7b145af..b016ffe 100644
--- a/server/protocols/webadmin/webadmin-cassandra/src/test/java/org/apache/james/webadmin/routes/CassandraMigrationRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-cassandra/src/test/java/org/apache/james/webadmin/routes/CassandraMigrationRoutesTest.java
@@ -88,7 +88,7 @@ public class CassandraMigrationRoutesTest {
webAdminServer.await();
- RestAssured.requestSpecification = WebAdminUtils.defineRequestSpecification(webAdminServer)
+ RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminServer)
.setBasePath(CassandraMigrationRoutes.VERSION_BASE)
.build();
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/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 1d312a0..5b4e147 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
@@ -48,12 +48,16 @@ public class WebAdminUtils {
metricFactory);
}
- public static RequestSpecBuilder defineRequestSpecification(WebAdminServer webAdminServer) {
+ public static RequestSpecBuilder buildRequestSpecification(WebAdminServer webAdminServer) {
+ return buildRequestSpecification(webAdminServer.getPort());
+ }
+
+ public static RequestSpecBuilder buildRequestSpecification(PortSupplier portSupplier) {
return new RequestSpecBuilder()
.setContentType(ContentType.JSON)
.setAccept(ContentType.JSON)
.setConfig(newConfig().encoderConfig(encoderConfig().defaultContentCharset(StandardCharsets.UTF_8)))
- .setPort(webAdminServer.getPort().get().getValue());
+ .setPort(portSupplier.get().getValue());
}
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/routes/TasksRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/routes/TasksRoutesTest.java b/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/routes/TasksRoutesTest.java
index 1c1ff85..ea56a6c 100644
--- a/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/routes/TasksRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/routes/TasksRoutesTest.java
@@ -63,7 +63,7 @@ public class TasksRoutesTest {
webAdminServer.configure(NO_CONFIGURATION);
webAdminServer.await();
- RestAssured.requestSpecification = WebAdminUtils.defineRequestSpecification(webAdminServer)
+ RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminServer)
.setBasePath(TasksRoutes.BASE)
.build();
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DomainsRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DomainsRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DomainsRoutesTest.java
index 137a187..683fc91 100644
--- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DomainsRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DomainsRoutesTest.java
@@ -66,7 +66,7 @@ public class DomainsRoutesTest {
webAdminServer.configure(NO_CONFIGURATION);
webAdminServer.await();
- RestAssured.requestSpecification = WebAdminUtils.defineRequestSpecification(webAdminServer)
+ RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminServer)
.setBasePath(DomainsRoutes.DOMAINS)
.build();
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/GroupsRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/GroupsRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/GroupsRoutesTest.java
index 1b6aa7e..fee6ba0 100644
--- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/GroupsRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/GroupsRoutesTest.java
@@ -82,7 +82,7 @@ public class GroupsRoutesTest {
webAdminServer.configure(NO_CONFIGURATION);
webAdminServer.await();
- RestAssured.requestSpecification = WebAdminUtils.defineRequestSpecification(webAdminServer)
+ RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminServer)
.setBasePath(GroupsRoutes.ROOT_PATH)
.log(LogDetail.ALL)
.build();
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/UsersRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/UsersRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/UsersRoutesTest.java
index 086d4c9..028a198 100644
--- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/UsersRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/UsersRoutesTest.java
@@ -68,7 +68,7 @@ public class UsersRoutesTest {
webAdminServer.configure(NO_CONFIGURATION);
webAdminServer.await();
- RestAssured.requestSpecification = WebAdminUtils.defineRequestSpecification(webAdminServer)
+ RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminServer)
.setBasePath(UserRoutes.USERS)
.build();
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/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 45869fe..60029c1 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
@@ -54,7 +54,7 @@ public class GlobalQuotaRoutesTest {
webAdminServer.configure(NO_CONFIGURATION);
webAdminServer.await();
- RestAssured.requestSpecification = WebAdminUtils.defineRequestSpecification(webAdminServer)
+ RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminServer)
.build();
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserMailboxesRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserMailboxesRoutesTest.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserMailboxesRoutesTest.java
index ef8fccd..08f63e7 100644
--- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserMailboxesRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserMailboxesRoutesTest.java
@@ -84,7 +84,7 @@ public class UserMailboxesRoutesTest {
webAdminServer.configure(NO_CONFIGURATION);
webAdminServer.await();
- RestAssured.requestSpecification = WebAdminUtils.defineRequestSpecification(webAdminServer)
+ RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminServer)
.setBasePath(USERS_BASE + SEPARATOR + USERNAME + SEPARATOR + UserMailboxesRoutes.MAILBOXES)
.build();
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/abf91be4/server/protocols/webadmin/webadmin-mailrepository/src/test/java/org/apache/james/webadmin/routes/MailRepositoriesRoutesTest.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-mailrepository/src/test/java/org/apache/james/webadmin/routes/MailRepositoriesRoutesTest.java b/server/protocols/webadmin/webadmin-mailrepository/src/test/java/org/apache/james/webadmin/routes/MailRepositoriesRoutesTest.java
index 6a616b6..34edfdf 100644
--- a/server/protocols/webadmin/webadmin-mailrepository/src/test/java/org/apache/james/webadmin/routes/MailRepositoriesRoutesTest.java
+++ b/server/protocols/webadmin/webadmin-mailrepository/src/test/java/org/apache/james/webadmin/routes/MailRepositoriesRoutesTest.java
@@ -81,7 +81,7 @@ public class MailRepositoriesRoutesTest {
webAdminServer.configure(NO_CONFIGURATION);
webAdminServer.await();
- RestAssured.requestSpecification = WebAdminUtils.defineRequestSpecification(webAdminServer)
+ RestAssured.requestSpecification = WebAdminUtils.buildRequestSpecification(webAdminServer)
.setBasePath(MailRepositoriesRoutes.MAIL_REPOSITORIES)
.build();
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org