JAMES-2099 Integration Test for swagger API

Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/80dae302
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/80dae302
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/80dae302

Branch: refs/heads/master
Commit: 80dae3025c8aaa99bc5fa88f00e34d37596144b7
Parents: f697263
Author: quynhn <qngu...@linagora.com>
Authored: Tue Jul 25 10:54:17 2017 +0700
Committer: quynhn <qngu...@linagora.com>
Committed: Mon Jul 31 10:56:08 2017 +0700

----------------------------------------------------------------------
 .../WebAdminServerIntegrationTest.java          | 26 +++++++++++++++++---
 .../webadmin/WebAdminConfigurationTest.java     | 24 ++++++++++++++++++
 2 files changed, 47 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/80dae302/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 afd47d4..4a1205d 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
@@ -24,7 +24,11 @@ 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 static org.hamcrest.Matchers.contains;
+import static org.hamcrest.Matchers.containsString;
 import static org.hamcrest.Matchers.is;
+import static org.hamcrest.Matchers.notNullValue;
+import static org.hamcrest.Matchers.stringContainsInOrder;
 
 import org.apache.james.CassandraJmapTestRule;
 import org.apache.james.GuiceJamesServer;
@@ -36,7 +40,7 @@ import org.apache.james.utils.WebAdminGuiceProbe;
 import org.apache.james.webadmin.routes.DomainRoutes;
 import org.apache.james.webadmin.routes.UserMailboxesRoutes;
 import org.apache.james.webadmin.routes.UserRoutes;
-import org.apache.james.webadmin.service.CassandraMigrationService;
+import org.apache.james.webadmin.swagger.routes.SwaggerRoutes;
 
 import org.junit.After;
 import org.junit.Before;
@@ -44,8 +48,6 @@ import org.junit.Rule;
 import org.junit.Test;
 
 import com.google.common.base.Charsets;
-import com.google.inject.AbstractModule;
-import com.google.inject.name.Names;
 import com.jayway.restassured.RestAssured;
 import com.jayway.restassured.builder.RequestSpecBuilder;
 import com.jayway.restassured.http.ContentType;
@@ -250,4 +252,22 @@ public class WebAdminServerIntegrationTest {
             .statusCode(200)
             .body(is("{\"version\":" + 
CassandraSchemaVersionManager.MAX_VERSION + "}"));
     }
+
+    @Test
+    public void getSwaggerShouldReturnJsonDataForSwagger() throws Exception {
+        given()
+            .port(webAdminGuiceProbe.getWebAdminPort())
+        .when()
+            .get(SwaggerRoutes.SWAGGER_ENDPOINT)
+        .then()
+            .statusCode(200)
+            .body(containsString("\"swagger\":\"2.0\""))
+            .body(containsString("\"info\":{\"description\":\"All the web 
administration API for JAMES\",\"version\":\"V1.0\",\"title\":\"JAMES Web Admin 
API\"}"))
+            .body(containsString("\"tags\":[\"User's Mailbox\"]"))
+            .body(containsString("\"tags\":[\"GlobalQuota\"]"))
+            .body(containsString("\"tags\":[\"Domains\"]"))
+            .body(containsString("\"tags\":[\"Users\"]"))
+        ;
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/james-project/blob/80dae302/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/WebAdminConfigurationTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/WebAdminConfigurationTest.java
 
b/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/WebAdminConfigurationTest.java
index 1030dcf..ab0649f 100644
--- 
a/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/WebAdminConfigurationTest.java
+++ 
b/server/protocols/webadmin/webadmin-core/src/test/java/org/apache/james/webadmin/WebAdminConfigurationTest.java
@@ -174,6 +174,30 @@ public class WebAdminConfigurationTest {
     }
 
     @Test
+    public void builderShouldDefineHostWithDefault() {
+        assertThat(
+            WebAdminConfiguration.builder()
+                .enabled()
+                .port(PORT)
+                .build())
+            .extracting(WebAdminConfiguration::getHost)
+            .containsExactly(WebAdminConfiguration.DEFAULT_HOST);
+    }
+
+    @Test
+    public void builderShouldDefineHostWithSetting() {
+        String host = "any.host";
+        assertThat(
+            WebAdminConfiguration.builder()
+                .enabled()
+                .port(PORT)
+                .host(host)
+                .build())
+            .extracting(WebAdminConfiguration::getHost)
+            .containsExactly(host);
+    }
+
+    @Test
     public void shouldMatchBeanContract() {
         EqualsVerifier.forClass(WebAdminConfiguration.class).verify();
     }


---------------------------------------------------------------------
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