SLING-1237 regression test to ensure a group with members can be removed
git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@924617 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/test/java/org/apache/sling/launchpad/webapp/integrationtest/userManager/RemoveAuthorizablesTest.java b/src/test/java/org/apache/sling/launchpad/webapp/integrationtest/userManager/RemoveAuthorizablesTest.java
index 35b7172..edbe92d 100644
--- a/src/test/java/org/apache/sling/launchpad/webapp/integrationtest/userManager/RemoveAuthorizablesTest.java
+++ b/src/test/java/org/apache/sling/launchpad/webapp/integrationtest/userManager/RemoveAuthorizablesTest.java
@@ -87,4 +87,29 @@
getUrl = HTTP_BASE_URL + "/system/userManager/group/" + groupId + ".json";
assertAuthenticatedHttpStatus(creds, getUrl, HttpServletResponse.SC_NOT_FOUND, null); //make sure the profile request returns some data
}
+
+ /**
+ * Test the problem reported as SLING-1237
+ */
+ public void testRemoveGroupWithMembers() throws IOException {
+ String groupId = createTestGroup();
+ String userId = createTestUser();
+
+ Credentials creds = new UsernamePasswordCredentials("admin", "admin");
+ String addMemberPostUrl = HTTP_BASE_URL + "/system/userManager/group/" + groupId + ".update.html";
+ List<NameValuePair> addMemberPostParams = new ArrayList<NameValuePair>();
+ addMemberPostParams.add(new NameValuePair(":member", userId));
+ assertAuthenticatedPostStatus(creds, addMemberPostUrl, HttpServletResponse.SC_OK, addMemberPostParams, null);
+
+ String getUrl = HTTP_BASE_URL + "/system/userManager/group/" + groupId + ".json";
+ assertAuthenticatedHttpStatus(creds, getUrl, HttpServletResponse.SC_OK, null); //make sure the profile request returns some data
+
+ String postUrl = HTTP_BASE_URL + "/system/userManager/group/" + groupId + ".delete.html";
+ List<NameValuePair> postParams = new ArrayList<NameValuePair>();
+ assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+
+ getUrl = HTTP_BASE_URL + "/system/userManager/group/" + groupId + ".json";
+ assertAuthenticatedHttpStatus(creds, getUrl, HttpServletResponse.SC_NOT_FOUND, null); //make sure the profile request returns some data
+ }
+
}