use of org.alfresco.module.org_alfresco_module_rm.capability.Capability in project records-management by Alfresco.
the class MoveRecordFolderTest method testMoveClosedFolder.
/**
* Given a closed folder
* When we evaluate the move capability on it
* The access is denied
*/
public void testMoveClosedFolder() {
final NodeRef destination = doTestInTransaction(new Test<NodeRef>() {
@Override
public NodeRef run() {
// create a record category
return filePlanService.createRecordCategory(filePlan, GUID.generate());
}
});
final NodeRef testFolder = doTestInTransaction(new Test<NodeRef>() {
@Override
public NodeRef run() {
// create folder
NodeRef testFolder = recordFolderService.createRecordFolder(rmContainer, GUID.generate());
// close folder
recordFolderService.closeRecordFolder(testFolder);
return testFolder;
}
@Override
public void test(NodeRef testFolder) throws Exception {
Capability moveCapability = capabilityService.getCapability("MoveRecordFolder");
assertEquals(AccessDecisionVoter.ACCESS_DENIED, moveCapability.evaluate(testFolder, destination));
}
});
}
use of org.alfresco.module.org_alfresco_module_rm.capability.Capability in project records-management by Alfresco.
the class RoleRestApiTest method getListOfCapabilities.
private Set<Capability> getListOfCapabilities(int size, int offset) {
Set<Capability> result = new HashSet<Capability>(size);
Set<Capability> caps = capabilityService.getCapabilities(false);
int count = 0;
for (Capability cap : caps) {
if (count < size + offset) {
if (count >= offset) {
result.add(cap);
}
} else {
break;
}
count++;
}
return result;
}
use of org.alfresco.module.org_alfresco_module_rm.capability.Capability in project records-management by Alfresco.
the class RoleRestApiTest method testPutRole.
public void testPutRole() throws Exception {
String role1 = GUID.generate();
filePlanRoleService.createRole(filePlan, role1, "My Test Role", getListOfCapabilities(5));
try {
Set<Capability> caps = getListOfCapabilities(4, 8);
JSONArray arrCaps = new JSONArray();
for (Capability cap : caps) {
System.out.println(cap.getName());
arrCaps.put(cap.getName());
}
JSONObject obj = new JSONObject();
obj.put("name", role1);
obj.put("displayLabel", "Changed");
obj.put("capabilities", arrCaps);
// Get the roles
Response rsp = sendRequest(new PutRequest(getRolesUrlBySite() + "/" + role1, obj.toString(), APPLICATION_JSON), 200);
String rspContent = rsp.getContentAsString();
JSONObject result = new JSONObject(rspContent);
JSONObject roleObj = result.getJSONObject("data");
assertNotNull(roleObj);
assertNotNull(roleObj);
assertEquals(role1, roleObj.get("name"));
assertEquals("Changed", roleObj.get("displayLabel"));
checkCapabilities(roleObj, 4);
// Bad requests
sendRequest(new PutRequest(getRolesUrlBySite() + "/cheese", obj.toString(), APPLICATION_JSON), 404);
} finally {
// Clean up
filePlanRoleService.deleteRole(filePlan, role1);
}
}
use of org.alfresco.module.org_alfresco_module_rm.capability.Capability in project records-management by Alfresco.
the class RoleRestApiTest method testPostRoles.
public void testPostRoles() throws Exception {
Set<Capability> caps = getListOfCapabilities(5);
JSONArray arrCaps = new JSONArray();
for (Capability cap : caps) {
arrCaps.put(cap.getName());
}
String roleName = GUID.generate();
JSONObject obj = new JSONObject();
obj.put("name", roleName);
obj.put("displayLabel", "Display Label");
obj.put("capabilities", arrCaps);
Response rsp = sendRequest(new PostRequest(getRolesUrlBySite(), obj.toString(), APPLICATION_JSON), 200);
try {
String rspContent = rsp.getContentAsString();
JSONObject resultObj = new JSONObject(rspContent);
JSONObject roleObj = resultObj.getJSONObject("data");
assertNotNull(roleObj);
assertNotNull(roleObj);
assertEquals(roleName, roleObj.get("name"));
assertEquals("Display Label", roleObj.get("displayLabel"));
checkCapabilities(roleObj, 5);
} finally {
filePlanRoleService.deleteRole(filePlan, roleName);
}
}
Aggregations