diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestAppResource.java b/docs-web/src/test/java/com/sismics/docs/rest/TestAppResource.java index 6b6a57fc..39af5318 100644 --- a/docs-web/src/test/java/com/sismics/docs/rest/TestAppResource.java +++ b/docs-web/src/test/java/com/sismics/docs/rest/TestAppResource.java @@ -37,7 +37,10 @@ public class TestAppResource extends BaseJerseyTest { * Test the API resource. */ + // Record if config has been changed by previous test runs private static boolean configInboxChanged = false; + private static boolean configSmtpChanged = false; + private static boolean configLdapChanged = false; @Test public void testAppResource() { @@ -191,6 +194,12 @@ public class TestAppResource extends BaseJerseyTest { target().path("/document/list").request() .cookie(TokenBasedSecurityFilter.COOKIE_NAME, guestToken) .get(JsonObject.class); + + // Disable guest login (clean up state) + target().path("/app/guest_login").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .post(Entity.form(new Form() + .param("enabled", "false")), JsonObject.class); } /** @@ -205,11 +214,13 @@ public class TestAppResource extends BaseJerseyTest { JsonObject json = target().path("/app/config_smtp").request() .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) .get(JsonObject.class); - Assert.assertTrue(json.isNull("hostname")); - Assert.assertTrue(json.isNull("port")); - Assert.assertTrue(json.isNull("username")); - Assert.assertTrue(json.isNull("password")); - Assert.assertTrue(json.isNull("from")); + if (!configSmtpChanged) { + Assert.assertTrue(json.isNull("hostname")); + Assert.assertTrue(json.isNull("port")); + Assert.assertTrue(json.isNull("username")); + Assert.assertTrue(json.isNull("password")); + Assert.assertTrue(json.isNull("from")); + } // Change SMTP configuration target().path("/app/config_smtp").request() @@ -220,6 +231,7 @@ public class TestAppResource extends BaseJerseyTest { .param("username", "sismics") .param("from", "contact@sismics.com") ), JsonObject.class); + configSmtpChanged = true; // Get SMTP configuration json = target().path("/app/config_smtp").request() @@ -389,7 +401,9 @@ public class TestAppResource extends BaseJerseyTest { JsonObject json = target().path("/app/config_ldap").request() .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) .get(JsonObject.class); - Assert.assertFalse(json.getBoolean("enabled")); + if (!configLdapChanged) { + Assert.assertFalse(json.getBoolean("enabled")); + } // Change LDAP configuration target().path("/app/config_ldap").request() @@ -406,6 +420,7 @@ public class TestAppResource extends BaseJerseyTest { .param("default_email", "devnull@teedy.io") .param("default_storage", "100000000") ), JsonObject.class); + configLdapChanged = true; // Get the LDAP configuration json = target().path("/app/config_ldap").request() diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestAuditLogResource.java b/docs-web/src/test/java/com/sismics/docs/rest/TestAuditLogResource.java index 7dfecc3e..123193ff 100644 --- a/docs-web/src/test/java/com/sismics/docs/rest/TestAuditLogResource.java +++ b/docs-web/src/test/java/com/sismics/docs/rest/TestAuditLogResource.java @@ -118,6 +118,12 @@ public class TestAuditLogResource extends BaseJerseyTest { Assert.assertEquals(countByClass(logs, "Document"), 1); Assert.assertEquals(countByClass(logs, "Acl"), 2); Assert.assertEquals(countByClass(logs, "File"), 1); + + // Delete auditlog1 + String adminToken = adminToken(); + target().path("/user/auditlog1").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); } /** diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestGroupResource.java b/docs-web/src/test/java/com/sismics/docs/rest/TestGroupResource.java index d83808c8..3ab3949f 100644 --- a/docs-web/src/test/java/com/sismics/docs/rest/TestGroupResource.java +++ b/docs-web/src/test/java/com/sismics/docs/rest/TestGroupResource.java @@ -188,5 +188,25 @@ public class TestGroupResource extends BaseJerseyTest { Assert.assertEquals(2, groups.size()); Assert.assertTrue(groupList.contains("g11")); Assert.assertTrue(groupList.contains("g112")); + + // Delete all remaining groups and users + target().path("/group/g11").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(JsonObject.class); + target().path("/group/g12new").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(JsonObject.class); + target().path("/group/g111").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(JsonObject.class); + target().path("/group/g112").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(JsonObject.class); + target().path("/user/group1").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); + target().path("/user/admin2").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); } } diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestRouteModelResource.java b/docs-web/src/test/java/com/sismics/docs/rest/TestRouteModelResource.java index 46fed080..e57a7f0e 100644 --- a/docs-web/src/test/java/com/sismics/docs/rest/TestRouteModelResource.java +++ b/docs-web/src/test/java/com/sismics/docs/rest/TestRouteModelResource.java @@ -137,5 +137,10 @@ public class TestRouteModelResource extends BaseJerseyTest { .get(JsonObject.class); routeModels = json.getJsonArray("routemodels"); Assert.assertEquals(1, routeModels.size()); + + // Deletes routeModel1 user + target().path("/user/routeModel1").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); } } diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestSecurity.java b/docs-web/src/test/java/com/sismics/docs/rest/TestSecurity.java index d5984d45..abdf9a4c 100644 --- a/docs-web/src/test/java/com/sismics/docs/rest/TestSecurity.java +++ b/docs-web/src/test/java/com/sismics/docs/rest/TestSecurity.java @@ -73,6 +73,12 @@ public class TestSecurity extends BaseJerseyTest { // User testsecurity logs out clientUtil.logout(testSecurityToken); + + // Delete the user + String adminToken = adminToken(); + target().path("/user/testsecurity").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); } @Test @@ -98,5 +104,11 @@ public class TestSecurity extends BaseJerseyTest { .header(HeaderBasedSecurityFilter.AUTHENTICATED_USER_HEADER, "idontexist") .get() .getStatus()); + + // Delete the user + String adminToken = adminToken(); + target().path("/user/header_auth_test").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); } } \ No newline at end of file diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestShareResource.java b/docs-web/src/test/java/com/sismics/docs/rest/TestShareResource.java index 0d465423..c0732e49 100644 --- a/docs-web/src/test/java/com/sismics/docs/rest/TestShareResource.java +++ b/docs-web/src/test/java/com/sismics/docs/rest/TestShareResource.java @@ -127,5 +127,14 @@ public class TestShareResource extends BaseJerseyTest { Assert.assertEquals(Status.BAD_REQUEST, Status.fromStatusCode(response.getStatus())); json = response.readEntity(JsonObject.class); Assert.assertEquals("ShareNotFound", json.getString("type")); + + // Deletes share1 and share 2 + String adminToken = adminToken(); + target().path("/user/share1").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); + target().path("/user/share2").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); } } \ No newline at end of file diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestTagResource.java b/docs-web/src/test/java/com/sismics/docs/rest/TestTagResource.java index 0b0e5dcd..550b3ea4 100644 --- a/docs-web/src/test/java/com/sismics/docs/rest/TestTagResource.java +++ b/docs-web/src/test/java/com/sismics/docs/rest/TestTagResource.java @@ -230,5 +230,11 @@ public class TestTagResource extends BaseJerseyTest { Assert.assertEquals(1, tags.size()); Assert.assertEquals("UpdatedName", tags.getJsonObject(0).getString("name")); Assert.assertNull(tags.getJsonObject(0).get("parent")); + + // Deletes user tag1 + String adminToken = adminToken(); + target().path("/user/tag1").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); } } \ No newline at end of file diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestThemeResource.java b/docs-web/src/test/java/com/sismics/docs/rest/TestThemeResource.java index e68a5ad5..19068f6b 100644 --- a/docs-web/src/test/java/com/sismics/docs/rest/TestThemeResource.java +++ b/docs-web/src/test/java/com/sismics/docs/rest/TestThemeResource.java @@ -103,5 +103,13 @@ public class TestThemeResource extends BaseJerseyTest { // Get the background response = target().path("/theme/image/background").request().get(); Assert.assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + + // Reset the main color as admin + target().path("/theme").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .post(Entity.form(new Form() + .param("color", "#ffffff") + .param("name", "Teedy") + .param("css", "")), JsonObject.class); } } diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestUserResource.java b/docs-web/src/test/java/com/sismics/docs/rest/TestUserResource.java index 74c3a061..657d99f8 100644 --- a/docs-web/src/test/java/com/sismics/docs/rest/TestUserResource.java +++ b/docs-web/src/test/java/com/sismics/docs/rest/TestUserResource.java @@ -230,6 +230,11 @@ public class TestUserResource extends BaseJerseyTest { .param("username", "alice") .param("password", "12345678"))); Assert.assertEquals(Status.FORBIDDEN, Status.fromStatusCode(response.getStatus())); + + // Delete user bob + target().path("/user").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, bobToken) + .delete(); } /** @@ -416,7 +421,7 @@ public class TestUserResource extends BaseJerseyTest { response = target().path("/user/totp1").request() .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) .delete(); - Assert.assertEquals(200, response.getStatus()); + Assert.assertEquals(Response.Status.OK, Response.Status.fromStatusCode(response.getStatus())); } @Test @@ -489,5 +494,11 @@ public class TestUserResource extends BaseJerseyTest { Assert.assertEquals(Response.Status.BAD_REQUEST, Response.Status.fromStatusCode(response.getStatus())); json = response.readEntity(JsonObject.class); Assert.assertEquals("KeyNotFound", json.getString("type")); + + // Delete absent_minded + response = target().path("/user/absent_minded").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); + Assert.assertEquals(Response.Status.OK, Response.Status.fromStatusCode(response.getStatus())); } } diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestWebhookResource.java b/docs-web/src/test/java/com/sismics/docs/rest/TestWebhookResource.java index edb3eeeb..1d88cdd3 100644 --- a/docs-web/src/test/java/com/sismics/docs/rest/TestWebhookResource.java +++ b/docs-web/src/test/java/com/sismics/docs/rest/TestWebhookResource.java @@ -84,5 +84,10 @@ public class TestWebhookResource extends BaseJerseyTest { .get(JsonObject.class); webhooks = json.getJsonArray("webhooks"); Assert.assertEquals(0, webhooks.size()); + + // Deletes webhook1 + target().path("/user/webhook1").request() + .cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken) + .delete(); } }