You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by bd...@apache.org on 2013/11/05 16:07:18 UTC
svn commit: r1539021 -
/sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/accessManager/ModifyAceTest.java
Author: bdelacretaz
Date: Tue Nov 5 15:07:17 2013
New Revision: 1539021
URL: http://svn.apache.org/r1539021
Log:
SLING-3225 - Use JackrabbitOnly category to disable tests that fail on Oak
Modified:
sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/accessManager/ModifyAceTest.java
Modified: sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/accessManager/ModifyAceTest.java
URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/accessManager/ModifyAceTest.java?rev=1539021&r1=1539020&r2=1539021&view=diff
==============================================================================
--- sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/accessManager/ModifyAceTest.java (original)
+++ sling/trunk/launchpad/integration-tests/src/main/java/org/apache/sling/launchpad/webapp/integrationtest/accessManager/ModifyAceTest.java Tue Nov 5 15:07:17 2013
@@ -16,6 +16,11 @@
*/
package org.apache.sling.launchpad.webapp.integrationtest.accessManager;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertFalse;
+
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashSet;
@@ -30,20 +35,32 @@ import org.apache.commons.httpclient.Use
import org.apache.sling.commons.json.JSONArray;
import org.apache.sling.commons.json.JSONException;
import org.apache.sling.commons.json.JSONObject;
+import org.apache.sling.commons.testing.integration.HttpTest;
+import org.apache.sling.commons.testing.junit.categories.JackrabbitOnly;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
/**
* Tests for the 'modifyAce' Sling Post Operation
*/
-public class ModifyAceTest extends AccessManagerTestUtil {
+public class ModifyAceTest {
String testUserId = null;
String testUserId2 = null;
String testGroupId = null;
String testFolderUrl = null;
- @Override
- public void tearDown() throws Exception {
- super.tearDown();
+ private final AccessManagerTestUtil H = new AccessManagerTestUtil();
+
+ @Before
+ public void setup() throws Exception {
+ H.setUp();
+ }
+ @After
+ public void cleanup() throws Exception {
+ H.tearDown();
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
@@ -52,32 +69,33 @@ public class ModifyAceTest extends Acces
String postUrl = testFolderUrl;
List<NameValuePair> postParams = new ArrayList<NameValuePair>();
postParams.add(new NameValuePair(":operation", "delete"));
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
}
if (testGroupId != null) {
//remove the test user if it exists.
- String postUrl = HTTP_BASE_URL + "/system/userManager/group/" + testGroupId + ".delete.html";
+ String postUrl = HttpTest.HTTP_BASE_URL + "/system/userManager/group/" + testGroupId + ".delete.html";
List<NameValuePair> postParams = new ArrayList<NameValuePair>();
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
}
if (testUserId != null) {
//remove the test user if it exists.
- String postUrl = HTTP_BASE_URL + "/system/userManager/user/" + testUserId + ".delete.html";
+ String postUrl = HttpTest.HTTP_BASE_URL + "/system/userManager/user/" + testUserId + ".delete.html";
List<NameValuePair> postParams = new ArrayList<NameValuePair>();
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
}
if (testUserId2 != null) {
//remove the test user if it exists.
- String postUrl = HTTP_BASE_URL + "/system/userManager/user/" + testUserId2 + ".delete.html";
+ String postUrl = HttpTest.HTTP_BASE_URL + "/system/userManager/user/" + testUserId2 + ".delete.html";
List<NameValuePair> postParams = new ArrayList<NameValuePair>();
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
}
}
+ @Test
public void testModifyAceForUser() throws IOException, JSONException {
- testUserId = createTestUser();
+ testUserId = H.createTestUser();
- testFolderUrl = createTestFolder();
+ testFolderUrl = H.createTestFolder();
String postUrl = testFolderUrl + ".modifyAce.html";
@@ -88,13 +106,13 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@jcr:modifyAccessControl", "bogus")); //invalid value should be ignored.
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
//fetch the JSON for the acl to verify the settings.
String getUrl = testFolderUrl + ".acl.json";
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
assertEquals(1, jsonObject.length());
@@ -119,10 +137,11 @@ public class ModifyAceTest extends Acces
assertEquals("jcr:write", deniedArray.getString(0));
}
+ @Test
public void testModifyAceForGroup() throws IOException, JSONException {
- testGroupId = createTestGroup();
+ testGroupId = H.createTestGroup();
- testFolderUrl = createTestFolder();
+ testFolderUrl = H.createTestFolder();
String postUrl = testFolderUrl + ".modifyAce.html";
@@ -133,13 +152,13 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@jcr:modifyAccessControl", "bogus")); //invalid value should be ignored.
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
//fetch the JSON for the acl to verify the settings.
String getUrl = testFolderUrl + ".acl.json";
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
assertEquals(1, jsonObject.length());
@@ -167,9 +186,10 @@ public class ModifyAceTest extends Acces
* Test for SLING-997, preserve privileges that were not posted with the modifyAce
* request.
*/
+ @Test
public void testMergeAceForUser() throws IOException, JSONException {
- testUserId = createTestUser();
- testFolderUrl = createTestFolder();
+ testUserId = H.createTestUser();
+ testFolderUrl = H.createTestFolder();
String postUrl = testFolderUrl + ".modifyAce.html";
@@ -183,12 +203,12 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@jcr:removeChildNodes", "denied"));
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
//fetch the JSON for the acl to verify the settings.
String getUrl = testFolderUrl + ".acl.json";
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
assertEquals(1, jsonObject.length());
@@ -209,9 +229,9 @@ public class ModifyAceTest extends Acces
for (int i=0; i < grantedArray.length(); i++) {
grantedPrivilegeNames.add(grantedArray.getString(i));
}
- assertPrivilege(grantedPrivilegeNames, true, "jcr:read");
- assertPrivilege(grantedPrivilegeNames, true, "jcr:readAccessControl");
- assertPrivilege(grantedPrivilegeNames, true, "jcr:addChildNodes");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:read");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:readAccessControl");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:addChildNodes");
JSONArray deniedArray = aceObject.optJSONArray("denied");
assertNotNull(deniedArray);
@@ -220,8 +240,8 @@ public class ModifyAceTest extends Acces
for (int i=0; i < deniedArray.length(); i++) {
deniedPrivilegeNames.add(deniedArray.getString(i));
}
- assertPrivilege(deniedPrivilegeNames, true, "jcr:modifyAccessControl");
- assertPrivilege(deniedPrivilegeNames, true, "jcr:removeChildNodes");
+ H.assertPrivilege(deniedPrivilegeNames, true, "jcr:modifyAccessControl");
+ H.assertPrivilege(deniedPrivilegeNames, true, "jcr:removeChildNodes");
@@ -236,11 +256,11 @@ public class ModifyAceTest extends Acces
postParams2.add(new NameValuePair("privilege@jcr:removeChildNodes", "none")); //clear the existing privilege
postParams2.add(new NameValuePair("privilege@jcr:removeNode", "denied")); //deny a new privilege
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams2, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams2, null);
//fetch the JSON for the acl to verify the settings.
- String json2 = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json2 = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json2);
JSONObject jsonObject2 = new JSONObject(json2);
assertEquals(1, jsonObject2.length());
@@ -258,9 +278,9 @@ public class ModifyAceTest extends Acces
for (int i=0; i < grantedArray2.length(); i++) {
grantedPrivilegeNames2.add(grantedArray2.getString(i));
}
- assertPrivilege(grantedPrivilegeNames2, true, "jcr:read");
- assertPrivilege(grantedPrivilegeNames2, true, "jcr:addChildNodes");
- assertPrivilege(grantedPrivilegeNames2, true, "jcr:modifyProperties");
+ H.assertPrivilege(grantedPrivilegeNames2, true, "jcr:read");
+ H.assertPrivilege(grantedPrivilegeNames2, true, "jcr:addChildNodes");
+ H.assertPrivilege(grantedPrivilegeNames2, true, "jcr:modifyProperties");
JSONArray deniedArray2 = aceObject2.optJSONArray("denied");
assertNotNull(deniedArray2);
@@ -269,8 +289,8 @@ public class ModifyAceTest extends Acces
for (int i=0; i < deniedArray2.length(); i++) {
deniedPrivilegeNames2.add(deniedArray2.getString(i));
}
- assertPrivilege(deniedPrivilegeNames2, true, "jcr:modifyAccessControl");
- assertPrivilege(deniedPrivilegeNames2, true, "jcr:removeNode");
+ H.assertPrivilege(deniedPrivilegeNames2, true, "jcr:modifyAccessControl");
+ H.assertPrivilege(deniedPrivilegeNames2, true, "jcr:removeNode");
}
@@ -278,9 +298,10 @@ public class ModifyAceTest extends Acces
* Test for SLING-997, preserve privileges that were not posted with the modifyAce
* request.
*/
+ @Test
public void testMergeAceForUserSplitAggregatePrincipal() throws IOException, JSONException {
- testUserId = createTestUser();
- testFolderUrl = createTestFolder();
+ testUserId = H.createTestUser();
+ testFolderUrl = H.createTestFolder();
String postUrl = testFolderUrl + ".modifyAce.html";
@@ -291,12 +312,12 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@jcr:write", "denied"));
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
//fetch the JSON for the acl to verify the settings.
String getUrl = testFolderUrl + ".acl.json";
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
@@ -314,7 +335,7 @@ public class ModifyAceTest extends Acces
for (int i=0; i < grantedArray.length(); i++) {
grantedPrivilegeNames.add(grantedArray.getString(i));
}
- assertPrivilege(grantedPrivilegeNames, true, "jcr:read");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:read");
JSONArray deniedArray = aceObject.optJSONArray("denied");
assertNotNull(deniedArray);
@@ -323,7 +344,7 @@ public class ModifyAceTest extends Acces
for (int i=0; i < deniedArray.length(); i++) {
deniedPrivilegeNames.add(deniedArray.getString(i));
}
- assertPrivilege(deniedPrivilegeNames, true, "jcr:write");
+ H.assertPrivilege(deniedPrivilegeNames, true, "jcr:write");
@@ -335,11 +356,11 @@ public class ModifyAceTest extends Acces
//jcr:write is not posted, but one of the aggregate privileges is now granted, so the aggregate priviledge should be disagreaged into
// the remaining denied privileges in the denied ACE
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams2, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams2, null);
//fetch the JSON for the acl to verify the settings.
- String json2 = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json2 = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json2);
JSONObject jsonObject2 = new JSONObject(json2);
@@ -357,8 +378,8 @@ public class ModifyAceTest extends Acces
for (int i=0; i < grantedArray2.length(); i++) {
grantedPrivilegeNames2.add(grantedArray2.getString(i));
}
- assertPrivilege(grantedPrivilegeNames2, true, "jcr:read");
- assertPrivilege(grantedPrivilegeNames2, true, "jcr:modifyProperties");
+ H.assertPrivilege(grantedPrivilegeNames2, true, "jcr:read");
+ H.assertPrivilege(grantedPrivilegeNames2, true, "jcr:modifyProperties");
JSONArray deniedArray2 = aceObject2.optJSONArray("denied");
assertNotNull(deniedArray2);
@@ -367,20 +388,21 @@ public class ModifyAceTest extends Acces
for (int i=0; i < deniedArray2.length(); i++) {
deniedPrivilegeNames2.add(deniedArray2.getString(i));
}
- assertPrivilege(deniedPrivilegeNames2, false, "jcr:write");
+ H.assertPrivilege(deniedPrivilegeNames2, false, "jcr:write");
//only the remaining privileges from the disaggregated jcr:write collection should remain.
- assertPrivilege(deniedPrivilegeNames2, true, "jcr:addChildNodes");
- assertPrivilege(deniedPrivilegeNames2, true, "jcr:removeNode");
- assertPrivilege(deniedPrivilegeNames2, true, "jcr:removeChildNodes");
+ H.assertPrivilege(deniedPrivilegeNames2, true, "jcr:addChildNodes");
+ H.assertPrivilege(deniedPrivilegeNames2, true, "jcr:removeNode");
+ H.assertPrivilege(deniedPrivilegeNames2, true, "jcr:removeChildNodes");
}
/**
* Test for SLING-997, preserve privileges that were not posted with the modifyAce
* request.
*/
+ @Test
public void testMergeAceForUserCombineAggregatePrivilege() throws IOException, JSONException {
- testUserId = createTestUser();
- testFolderUrl = createTestFolder();
+ testUserId = H.createTestUser();
+ testFolderUrl = H.createTestFolder();
String postUrl = testFolderUrl + ".modifyAce.html";
@@ -391,12 +413,12 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@jcr:removeNode", "denied"));
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
//fetch the JSON for the acl to verify the settings.
String getUrl = testFolderUrl + ".acl.json";
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
@@ -414,7 +436,7 @@ public class ModifyAceTest extends Acces
for (int i=0; i < grantedArray.length(); i++) {
grantedPrivilegeNames.add(grantedArray.getString(i));
}
- assertPrivilege(grantedPrivilegeNames, true, "jcr:read");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:read");
JSONArray deniedArray = aceObject.getJSONArray("denied");
assertNotNull(deniedArray);
@@ -423,7 +445,7 @@ public class ModifyAceTest extends Acces
for (int i=0; i < deniedArray.length(); i++) {
deniedPrivilegeNames.add(deniedArray.getString(i));
}
- assertPrivilege(deniedPrivilegeNames, true, "jcr:removeNode");
+ H.assertPrivilege(deniedPrivilegeNames, true, "jcr:removeNode");
@@ -436,11 +458,11 @@ public class ModifyAceTest extends Acces
//existing part.
postParams2.add(new NameValuePair("privilege@jcr:write", "denied")); //add a new privilege
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams2, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams2, null);
//fetch the JSON for the acl to verify the settings.
- String json2 = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json2 = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json2);
JSONObject jsonObject2 = new JSONObject(json2);
@@ -458,7 +480,7 @@ public class ModifyAceTest extends Acces
for (int i=0; i < grantedArray2.length(); i++) {
grantedPrivilegeNames2.add(grantedArray2.getString(i));
}
- assertPrivilege(grantedPrivilegeNames2, true, "jcr:read");
+ H.assertPrivilege(grantedPrivilegeNames2, true, "jcr:read");
JSONArray deniedArray2 = aceObject2.optJSONArray("denied");
assertNotNull(deniedArray2);
@@ -467,7 +489,7 @@ public class ModifyAceTest extends Acces
for (int i=0; i < deniedArray2.length(); i++) {
deniedPrivilegeNames2.add(deniedArray2.getString(i));
}
- assertPrivilege(deniedPrivilegeNames2, true, "jcr:write");
+ H.assertPrivilege(deniedPrivilegeNames2, true, "jcr:write");
}
@@ -475,9 +497,10 @@ public class ModifyAceTest extends Acces
* Test ACE update with a deny privilege for an ACE that already contains
* a grant privilege
*/
+ @Test
public void testMergeAceForUserDenyPrivilegeAfterGrantPrivilege() throws IOException, JSONException {
- testUserId = createTestUser();
- testFolderUrl = createTestFolder();
+ testUserId = H.createTestUser();
+ testFolderUrl = H.createTestFolder();
String postUrl = testFolderUrl + ".modifyAce.html";
@@ -487,12 +510,12 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@jcr:write", "granted"));
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
//fetch the JSON for the acl to verify the settings.
String getUrl = testFolderUrl + ".acl.json";
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
@@ -510,7 +533,7 @@ public class ModifyAceTest extends Acces
for (int i=0; i < grantedArray.length(); i++) {
grantedPrivilegeNames.add(grantedArray.getString(i));
}
- assertPrivilege(grantedPrivilegeNames, true, "jcr:write");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:write");
assertFalse(aceObject.has("denied"));
@@ -524,11 +547,11 @@ public class ModifyAceTest extends Acces
//existing ACE.
postParams2.add(new NameValuePair("privilege@jcr:nodeTypeManagement", "denied")); //add a new privilege
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams2, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams2, null);
//fetch the JSON for the acl to verify the settings.
- String json2 = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json2 = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json2);
JSONObject jsonObject2 = new JSONObject(json2);
@@ -546,7 +569,7 @@ public class ModifyAceTest extends Acces
for (int i=0; i < grantedArray2.length(); i++) {
grantedPrivilegeNames2.add(grantedArray2.getString(i));
}
- assertPrivilege(grantedPrivilegeNames2, true, "jcr:write");
+ H.assertPrivilege(grantedPrivilegeNames2, true, "jcr:write");
JSONArray deniedArray2 = aceObject2.optJSONArray("denied");
assertNotNull(deniedArray2);
@@ -555,7 +578,7 @@ public class ModifyAceTest extends Acces
for (int i=0; i < deniedArray2.length(); i++) {
deniedPrivilegeNames2.add(deniedArray2.getString(i));
}
- assertPrivilege(deniedPrivilegeNames2, true, "jcr:nodeTypeManagement");
+ H.assertPrivilege(deniedPrivilegeNames2, true, "jcr:nodeTypeManagement");
}
@@ -564,10 +587,11 @@ public class ModifyAceTest extends Acces
* Test to verify adding an ACE in the first position of
* the ACL
*/
+ @Test
public void testAddAceOrderByFirst() throws IOException, JSONException {
createAceOrderTestFolderWithOneAce();
- testGroupId = createTestGroup();
+ testGroupId = H.createTestGroup();
addOrUpdateAce(testFolderUrl, testGroupId, true, "first");
@@ -575,7 +599,7 @@ public class ModifyAceTest extends Acces
String getUrl = testFolderUrl + ".acl.json";
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
@@ -595,10 +619,11 @@ public class ModifyAceTest extends Acces
* Test to verify adding an ACE at the end
* the ACL
*/
+ @Test
public void testAddAceOrderByLast() throws IOException, JSONException {
createAceOrderTestFolderWithOneAce();
- testGroupId = createTestGroup();
+ testGroupId = H.createTestGroup();
addOrUpdateAce(testFolderUrl, testGroupId, true, "last");
@@ -606,7 +631,7 @@ public class ModifyAceTest extends Acces
String getUrl = testFolderUrl + ".acl.json";
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
@@ -627,10 +652,11 @@ public class ModifyAceTest extends Acces
* Test to verify adding an ACE before an existing ACE
* the ACL
*/
+ @Test
public void testAddAceOrderByBefore() throws IOException, JSONException {
createAceOrderTestFolderWithOneAce();
- testGroupId = createTestGroup();
+ testGroupId = H.createTestGroup();
addOrUpdateAce(testFolderUrl, testGroupId, true, "before " + testUserId);
@@ -638,7 +664,7 @@ public class ModifyAceTest extends Acces
String getUrl = testFolderUrl + ".acl.json";
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
@@ -661,10 +687,11 @@ public class ModifyAceTest extends Acces
* Test to verify adding an ACE after an existing ACE
* the ACL
*/
+ @Test
public void testAddAceOrderByAfter() throws IOException, JSONException {
createAceOrderTestFolderWithOneAce();
- testGroupId = createTestGroup();
+ testGroupId = H.createTestGroup();
addOrUpdateAce(testFolderUrl, testGroupId, true, "after " + testUserId);
@@ -672,7 +699,7 @@ public class ModifyAceTest extends Acces
String getUrl = testFolderUrl + ".acl.json";
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
@@ -693,17 +720,18 @@ public class ModifyAceTest extends Acces
* Test to verify adding an ACE at a specific index inside
* the ACL
*/
+ @Test
public void testAddAceOrderByNumeric() throws IOException, JSONException {
createAceOrderTestFolderWithOneAce();
- testGroupId = createTestGroup();
+ testGroupId = H.createTestGroup();
addOrUpdateAce(testFolderUrl, testGroupId, true, "0");
//fetch the JSON for the acl to verify the settings.
String getUrl = testFolderUrl + ".acl.json";
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
@@ -723,10 +751,10 @@ public class ModifyAceTest extends Acces
//add another principal between the testGroupId and testUserId
- testUserId2 = createTestUser();
+ testUserId2 = H.createTestUser();
addOrUpdateAce(testFolderUrl, testUserId2, true, "1");
- String json2 = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json2 = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json2);
JSONObject jsonObject2 = new JSONObject(json2);
@@ -753,10 +781,11 @@ public class ModifyAceTest extends Acces
* Test to make sure modifying an existing ace without changing the order
* leaves the ACE in the same position in the ACL
*/
+ @Test
public void testUpdateAcePreservePosition() throws IOException, JSONException {
createAceOrderTestFolderWithOneAce();
- testGroupId = createTestGroup();
+ testGroupId = H.createTestGroup();
addOrUpdateAce(testFolderUrl, testGroupId, true, "first");
@@ -768,7 +797,7 @@ public class ModifyAceTest extends Acces
String getUrl = testFolderUrl + ".acl.json";
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
@@ -790,9 +819,9 @@ public class ModifyAceTest extends Acces
* Helper to create a test folder with a single ACE pre-created
*/
private void createAceOrderTestFolderWithOneAce() throws IOException, JSONException {
- testUserId = createTestUser();
+ testUserId = H.createTestUser();
- testFolderUrl = createTestFolder();
+ testFolderUrl = H.createTestFolder();
addOrUpdateAce(testFolderUrl, testUserId, true, null);
@@ -800,7 +829,7 @@ public class ModifyAceTest extends Acces
String getUrl = testFolderUrl + ".acl.json";
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
@@ -829,16 +858,17 @@ public class ModifyAceTest extends Acces
}
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
+ H.assertAuthenticatedPostStatus(creds, postUrl, HttpServletResponse.SC_OK, postParams, null);
}
/**
* Test for SLING-1677
*/
+ @Test
public void testModifyAceResponseAsJSON() throws IOException, JSONException {
- testUserId = createTestUser();
+ testUserId = H.createTestUser();
- testFolderUrl = createTestFolder();
+ testFolderUrl = H.createTestFolder();
String postUrl = testFolderUrl + ".modifyAce.json";
@@ -849,7 +879,7 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@jcr:modifyAccessControl", "bogus")); //invalid value should be ignored.
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- String json = getAuthenticatedPostContent(creds, postUrl, CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedPostContent(creds, postUrl, HttpTest.CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
//make sure the json response can be parsed as a JSON object
JSONObject jsonObject = new JSONObject(json);
@@ -860,10 +890,11 @@ public class ModifyAceTest extends Acces
/**
* Test for SLING-3010
*/
+ @Test
public void testMergeAceForUserGrantNestedAggregatePrivilegeAfterDenySuperAggregatePrivilege() throws IOException, JSONException {
- testUserId = createTestUser();
+ testUserId = H.createTestUser();
- testFolderUrl = createTestFolder();
+ testFolderUrl = H.createTestFolder();
String postUrl = testFolderUrl + ".modifyAce.json";
@@ -876,7 +907,7 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@rep:write", "denied"));
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- /*String json = */getAuthenticatedPostContent(creds, postUrl, CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
+ /*String json = */H.getAuthenticatedPostContent(creds, postUrl, HttpTest.CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
//2. now grant the jcr:write subset from the rep:write aggregate privilege
@@ -887,13 +918,13 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@jcr:modifyAccessControl", "granted"));
postParams.add(new NameValuePair("privilege@jcr:write", "granted")); //sub-aggregate of rep:write
- /*String json = */getAuthenticatedPostContent(creds, postUrl, CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
+ /*String json = */H.getAuthenticatedPostContent(creds, postUrl, HttpTest.CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
//3. verify that the acl has the correct values
//fetch the JSON for the acl to verify the settings.
String getUrl = testFolderUrl + ".acl.json";
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
@@ -911,10 +942,10 @@ public class ModifyAceTest extends Acces
for (int i=0; i < grantedArray.length(); i++) {
grantedPrivilegeNames.add(grantedArray.getString(i));
}
- assertPrivilege(grantedPrivilegeNames, true, "jcr:versionManagement");
- assertPrivilege(grantedPrivilegeNames, true, "jcr:read");
- assertPrivilege(grantedPrivilegeNames, true, "jcr:modifyAccessControl");
- assertPrivilege(grantedPrivilegeNames, true, "jcr:write");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:versionManagement");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:read");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:modifyAccessControl");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:write");
JSONArray deniedArray = aceObject.getJSONArray("denied");
assertNotNull(deniedArray);
@@ -924,16 +955,18 @@ public class ModifyAceTest extends Acces
deniedPrivilegeNames.add(deniedArray.getString(i));
}
//the leftovers from the denied rep:write that were not granted with jcr:write
- assertPrivilege(deniedPrivilegeNames, true, "jcr:nodeTypeManagement");
+ H.assertPrivilege(deniedPrivilegeNames, true, "jcr:nodeTypeManagement");
}
/**
* Test for SLING-3010
*/
+ @Test
+ @Category(JackrabbitOnly.class) // TODO: fails on Oak
public void testMergeAceForUserGrantAggregatePrivilegePartsAfterDenyAggregatePrivilege() throws IOException, JSONException {
- testUserId = createTestUser();
+ testUserId = H.createTestUser();
- testFolderUrl = createTestFolder();
+ testFolderUrl = H.createTestFolder();
String postUrl = testFolderUrl + ".modifyAce.json";
@@ -946,7 +979,7 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@rep:write", "denied"));
Credentials creds = new UsernamePasswordCredentials("admin", "admin");
- /*String json = */getAuthenticatedPostContent(creds, postUrl, CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
+ /*String json = */H.getAuthenticatedPostContent(creds, postUrl, HttpTest.CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
//2. now grant the all the privileges contained in the rep:write privilege
postParams = new ArrayList<NameValuePair>();
@@ -957,13 +990,13 @@ public class ModifyAceTest extends Acces
postParams.add(new NameValuePair("privilege@jcr:nodeTypeManagement", "granted")); //sub-privilege of rep:write
postParams.add(new NameValuePair("privilege@jcr:write", "granted")); //sub-aggregate of rep:write
- /*String json = */getAuthenticatedPostContent(creds, postUrl, CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
+ /*String json = */H.getAuthenticatedPostContent(creds, postUrl, HttpTest.CONTENT_TYPE_JSON, postParams, HttpServletResponse.SC_OK);
//3. verify that the acl has the correct values
//fetch the JSON for the acl to verify the settings.
String getUrl = testFolderUrl + ".acl.json";
- String json = getAuthenticatedContent(creds, getUrl, CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
+ String json = H.getAuthenticatedContent(creds, getUrl, HttpTest.CONTENT_TYPE_JSON, null, HttpServletResponse.SC_OK);
assertNotNull(json);
JSONObject jsonObject = new JSONObject(json);
@@ -980,10 +1013,10 @@ public class ModifyAceTest extends Acces
for (int i=0; i < grantedArray.length(); i++) {
grantedPrivilegeNames.add(grantedArray.getString(i));
}
- assertPrivilege(grantedPrivilegeNames, true, "jcr:versionManagement");
- assertPrivilege(grantedPrivilegeNames, true, "jcr:read");
- assertPrivilege(grantedPrivilegeNames, true, "jcr:modifyAccessControl");
- assertPrivilege(grantedPrivilegeNames, true, "rep:write"); //jcr:nodeTypeManagement + jcr:write
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:versionManagement");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:read");
+ H.assertPrivilege(grantedPrivilegeNames, true, "jcr:modifyAccessControl");
+ H.assertPrivilege(grantedPrivilegeNames, true, "rep:write"); //jcr:nodeTypeManagement + jcr:write
assertEquals("Expecting the correct number of privileges in " + grantedPrivilegeNames, 4, grantedPrivilegeNames.size());
//should be nothing left in the denied set.