public void testAddRemoveDuplicatedAcl() {
final String DOCUMENT_NAME_1 = "DocumentWithAcl-1";
final String DOCUMENT_NAME_2 = "DocumentWithAcl-2";
LOG.info("starting testAddRemoveDuplicatedAcl() ...");
Acl acl = createAdvancedTestAcl();
String id1 = createDocument(DOCUMENT_NAME_1, fRootFolderId, acl, defaultAcl);
String id2 = createDocument(DOCUMENT_NAME_2, fRootFolderId, acl, defaultAcl);
// // modify ACL of first doc
// List<Ace> acesRemove = Arrays.asList(new Ace[] {
// createAce(BOB, EnumBasicPermissions.CMIS_WRITE.value()),
// });
// Acl aclRemove = new AccessControlListImpl(acesRemove);
// List<Ace> acesAdd = Arrays.asList(new Ace[] {
// createAce(DAN, EnumBasicPermissions.CMIS_WRITE.value()),
// });
// Acl aclAdd = new AccessControlListImpl(acesAdd);
Acl aclAdd = createAclAdd();
Acl aclRemove = createAclRemove();
Acl aclReturn = fAclSvc.applyAcl(fRepositoryId, id1, aclAdd, aclRemove, AclPropagation.OBJECTONLY, null);
checkAclAfterAddRemove(aclReturn);
// Ensure that ACL of second doc is unchanged
aclReturn = fAclSvc.getAcl(fRepositoryId, id2, true, null);