mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
Merge branch 'master' into feature/RM-7047_LinkToHeldItem
* master: Code review changes Code review changes
This commit is contained in:
@@ -49,7 +49,9 @@ import org.alfresco.service.namespace.QName;
|
|||||||
@BehaviourBean
|
@BehaviourBean
|
||||||
public class RemoveFromHoldAuditEvent extends AuditEvent implements HoldServicePolicies.OnRemoveFromHoldPolicy
|
public class RemoveFromHoldAuditEvent extends AuditEvent implements HoldServicePolicies.OnRemoveFromHoldPolicy
|
||||||
{
|
{
|
||||||
/** Node Service */
|
/**
|
||||||
|
* Node Service
|
||||||
|
*/
|
||||||
private NodeService nodeService;
|
private NodeService nodeService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -63,7 +65,7 @@ public class RemoveFromHoldAuditEvent extends AuditEvent implements HoldServiceP
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see @see org.alfresco.module.org_alfresco_module_rm.hold.HoldServicePolicies.OnRemoveFromHoldPolicy#onRemoveFromHold(org.alfresco.service.cmr.repository.NodeRef, org.alfresco.service.cmr.repository.NodeRef)
|
* @see org.alfresco.module.org_alfresco_module_rm.hold.HoldServicePolicies.OnRemoveFromHoldPolicy#onRemoveFromHold(org.alfresco.service.cmr.repository.NodeRef, org.alfresco.service.cmr.repository.NodeRef)
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
@Behaviour
|
@Behaviour
|
||||||
|
@@ -34,7 +34,6 @@ import java.util.HashMap;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
import org.alfresco.model.ContentModel;
|
import org.alfresco.model.ContentModel;
|
||||||
import org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditEntry;
|
import org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditEntry;
|
||||||
@@ -72,6 +71,12 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
/** Test start time */
|
/** Test start time */
|
||||||
private Date testStartTime;
|
private Date testStartTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove from hold audit event name.
|
||||||
|
*/
|
||||||
|
private static final String REMOVE_FROM_HOLD_AUDIT_EVENT = "Remove From Hold";
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see org.alfresco.module.org_alfresco_module_rm.test.util.BaseRMTestCase#setUp()
|
* @see org.alfresco.module.org_alfresco_module_rm.test.util.BaseRMTestCase#setUp()
|
||||||
*/
|
*/
|
||||||
@@ -504,8 +509,7 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
public void when() throws Exception
|
public void when() throws Exception
|
||||||
{
|
{
|
||||||
// set the audit wuery param
|
// set the audit wuery param
|
||||||
RecordsManagementAuditQueryParameters params = new RecordsManagementAuditQueryParameters();
|
RecordsManagementAuditQueryParameters params = createAuditQueryParameters(DELETE_USER_AUDIT_EVENT);
|
||||||
params.setEvent(DELETE_USER_AUDIT_EVENT);
|
|
||||||
|
|
||||||
// get the audit events for "Delete Person"
|
// get the audit events for "Delete Person"
|
||||||
entry = getAuditTrail(params, 1, ADMIN_USER);
|
entry = getAuditTrail(params, 1, ADMIN_USER);
|
||||||
@@ -560,8 +564,7 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
public void when() throws Exception
|
public void when() throws Exception
|
||||||
{
|
{
|
||||||
// set the audit query param
|
// set the audit query param
|
||||||
RecordsManagementAuditQueryParameters params = new RecordsManagementAuditQueryParameters();
|
RecordsManagementAuditQueryParameters params = createAuditQueryParameters(CREATE_USER_AUDIT_EVENT);
|
||||||
params.setEvent(CREATE_USER_AUDIT_EVENT);
|
|
||||||
|
|
||||||
// get the audit events for "Create Person"
|
// get the audit events for "Create Person"
|
||||||
entry = getAuditTrail(params, 1, ADMIN_USER);
|
entry = getAuditTrail(params, 1, ADMIN_USER);
|
||||||
@@ -748,13 +751,9 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
{
|
{
|
||||||
doBehaviourDrivenTest(new BehaviourDrivenTest()
|
doBehaviourDrivenTest(new BehaviourDrivenTest()
|
||||||
{
|
{
|
||||||
final static String REMOVE_FROM_HOLD_AUDIT_EVENT = "Remove From Hold";
|
|
||||||
|
|
||||||
String holdName = "Hold " + GUID.generate();
|
String holdName = "Hold " + GUID.generate();
|
||||||
NodeRef hold;
|
NodeRef hold;
|
||||||
|
|
||||||
Map<QName, Serializable> auditEventProperties;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void given()
|
public void given()
|
||||||
{
|
{
|
||||||
@@ -772,7 +771,7 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
@Override
|
@Override
|
||||||
public void then()
|
public void then()
|
||||||
{
|
{
|
||||||
auditEventProperties = getAuditEntry(REMOVE_FROM_HOLD_AUDIT_EVENT).getBeforeProperties();
|
Map<QName, Serializable> auditEventProperties = getAuditEntry(REMOVE_FROM_HOLD_AUDIT_EVENT).getBeforeProperties();
|
||||||
|
|
||||||
// check remove from hold audit event includes the hold name
|
// check remove from hold audit event includes the hold name
|
||||||
assertEquals("Remove From Hold event does not include hold name.", holdName,
|
assertEquals("Remove From Hold event does not include hold name.", holdName,
|
||||||
@@ -806,14 +805,10 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
{
|
{
|
||||||
doBehaviourDrivenTest(new BehaviourDrivenTest()
|
doBehaviourDrivenTest(new BehaviourDrivenTest()
|
||||||
{
|
{
|
||||||
final static String REMOVE_FROM_HOLD_AUDIT_EVENT = "Remove From Hold";
|
|
||||||
|
|
||||||
String holdName1 = "Hold " + GUID.generate();
|
String holdName1 = "Hold " + GUID.generate();
|
||||||
String holdName2 = "Hold " + GUID.generate();
|
String holdName2 = "Hold " + GUID.generate();
|
||||||
NodeRef hold1, hold2;
|
NodeRef hold1, hold2;
|
||||||
|
|
||||||
List<Map<QName, Serializable>> auditEventPropertiesList;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void given()
|
public void given()
|
||||||
{
|
{
|
||||||
@@ -823,26 +818,21 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
hold2 = utils.createHold(filePlan, holdName2, "Reason " + GUID.generate());
|
hold2 = utils.createHold(filePlan, holdName2, "Reason " + GUID.generate());
|
||||||
utils.addItemToHold(hold1, dmDocument);
|
utils.addItemToHold(hold1, dmDocument);
|
||||||
utils.addItemToHold(hold2, dmDocument);
|
utils.addItemToHold(hold2, dmDocument);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void when()
|
public void when()
|
||||||
{
|
{
|
||||||
utils.removeItemFromHold(hold1, dmDocument);
|
utils.removeItemsFromHolds(Arrays.asList(hold1, hold2), Arrays.asList(dmDocument));
|
||||||
utils.removeItemFromHold(hold2, dmDocument);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void then()
|
public void then()
|
||||||
{
|
{
|
||||||
auditEventPropertiesList = getAuditEntries(REMOVE_FROM_HOLD_AUDIT_EVENT)
|
List<RecordsManagementAuditEntry> auditEntries = getAuditEntries(REMOVE_FROM_HOLD_AUDIT_EVENT);
|
||||||
.stream()
|
|
||||||
.map(RecordsManagementAuditEntry::getBeforeProperties)
|
|
||||||
.collect(Collectors.toList());
|
|
||||||
|
|
||||||
// check remove from hold audit event exists for both records
|
// check remove from hold audit event exists for both holds
|
||||||
assertEquals(2, auditEventPropertiesList.size());
|
assertEquals(2, auditEntries.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -867,13 +857,9 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
{
|
{
|
||||||
doBehaviourDrivenTest(new BehaviourDrivenTest()
|
doBehaviourDrivenTest(new BehaviourDrivenTest()
|
||||||
{
|
{
|
||||||
final static String REMOVE_FROM_HOLD_AUDIT_EVENT = "Remove From Hold";
|
|
||||||
|
|
||||||
String holdName = "Hold " + GUID.generate();
|
String holdName = "Hold " + GUID.generate();
|
||||||
NodeRef hold;
|
NodeRef hold;
|
||||||
|
|
||||||
List<Map<QName, Serializable>> auditEventPropertiesList;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void given()
|
public void given()
|
||||||
{
|
{
|
||||||
@@ -893,13 +879,10 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
@Override
|
@Override
|
||||||
public void then()
|
public void then()
|
||||||
{
|
{
|
||||||
auditEventPropertiesList = getAuditEntries(REMOVE_FROM_HOLD_AUDIT_EVENT)
|
List<RecordsManagementAuditEntry> auditEntries = getAuditEntries(REMOVE_FROM_HOLD_AUDIT_EVENT);
|
||||||
.stream()
|
|
||||||
.map(RecordsManagementAuditEntry::getBeforeProperties)
|
|
||||||
.collect(Collectors.toList());
|
|
||||||
|
|
||||||
// check remove from hold audit event exists for both records
|
// check remove from hold audit event exists for both documents
|
||||||
assertEquals(2, auditEventPropertiesList.size());
|
assertEquals(2, auditEntries.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -964,13 +947,11 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
|
|
||||||
private RecordsManagementAuditEntry getAuditEntry(String auditEvent)
|
private RecordsManagementAuditEntry getAuditEntry(String auditEvent)
|
||||||
{
|
{
|
||||||
// set the audit query param for the given event
|
// create the audit query parameters for the given event
|
||||||
RecordsManagementAuditQueryParameters params = new RecordsManagementAuditQueryParameters();
|
RecordsManagementAuditQueryParameters params = createAuditQueryParameters(auditEvent);
|
||||||
params.setEvent(auditEvent);
|
|
||||||
|
|
||||||
// get the audit entries for the given event
|
// get the audit entries for the given event
|
||||||
List<RecordsManagementAuditEntry> auditEntries;
|
List<RecordsManagementAuditEntry> auditEntries = getAuditEntryAssertOnlyOne(params);
|
||||||
auditEntries = getAuditTrail(params, 1, ADMIN_USER);
|
|
||||||
|
|
||||||
// verify we have the expected audit event
|
// verify we have the expected audit event
|
||||||
RecordsManagementAuditEntry auditEntry = auditEntries.get(0);
|
RecordsManagementAuditEntry auditEntry = auditEntries.get(0);
|
||||||
@@ -980,17 +961,36 @@ public class RecordsManagementAuditServiceImplTest extends BaseRMTestCase
|
|||||||
return auditEntry;
|
return auditEntry;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private List<RecordsManagementAuditEntry> getAuditEntryAssertOnlyOne(RecordsManagementAuditQueryParameters params)
|
||||||
|
{
|
||||||
|
List<RecordsManagementAuditEntry> auditEntries;
|
||||||
|
auditEntries = getAuditTrail(params, 1, ADMIN_USER);
|
||||||
|
return auditEntries;
|
||||||
|
}
|
||||||
|
|
||||||
private List<RecordsManagementAuditEntry> getAuditEntries(String auditEvent)
|
private List<RecordsManagementAuditEntry> getAuditEntries(String auditEvent)
|
||||||
{
|
{
|
||||||
// set the audit query param for the given event
|
// create the audit query parameters for the given event
|
||||||
RecordsManagementAuditQueryParameters params = new RecordsManagementAuditQueryParameters();
|
RecordsManagementAuditQueryParameters params = createAuditQueryParameters(auditEvent);
|
||||||
params.setEvent(auditEvent);
|
|
||||||
|
|
||||||
// get the audit entries for the given event
|
// get the audit entries for the given event
|
||||||
List<RecordsManagementAuditEntry> auditEntries;
|
List<RecordsManagementAuditEntry> auditEntries = getAllAuditEntries(params);
|
||||||
auditEntries = getAuditTrail(params, -1, ADMIN_USER);
|
|
||||||
|
|
||||||
return auditEntries;
|
return auditEntries;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private List<RecordsManagementAuditEntry> getAllAuditEntries(RecordsManagementAuditQueryParameters params)
|
||||||
|
{
|
||||||
|
List<RecordsManagementAuditEntry> auditEntries;
|
||||||
|
auditEntries = getAuditTrail(params, -1, ADMIN_USER);
|
||||||
|
return auditEntries;
|
||||||
|
}
|
||||||
|
|
||||||
|
private RecordsManagementAuditQueryParameters createAuditQueryParameters(String auditEvent)
|
||||||
|
{
|
||||||
|
RecordsManagementAuditQueryParameters params = new RecordsManagementAuditQueryParameters();
|
||||||
|
params.setEvent(auditEvent);
|
||||||
|
return params;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -456,7 +456,7 @@ public class CommonRMTestUtils implements RecordsManagementModel
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Util method to remove items from a holds.
|
* Util method to remove items from holds.
|
||||||
*
|
*
|
||||||
* @param holdNodeRefs the list {@link NodeRef}s of the holds
|
* @param holdNodeRefs the list {@link NodeRef}s of the holds
|
||||||
* @param contentNodeRef the list of items which will be removed from the given holds
|
* @param contentNodeRef the list of items which will be removed from the given holds
|
||||||
|
@@ -48,7 +48,7 @@ import org.mockito.InjectMocks;
|
|||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Unit tests for {@link CreateHoldAuditEvent}.
|
* Unit tests for {@link RemoveFromHoldAuditEvent}.
|
||||||
*
|
*
|
||||||
* @author Chris Shields
|
* @author Chris Shields
|
||||||
* @since 3.3
|
* @since 3.3
|
||||||
@@ -86,7 +86,7 @@ public class RemoveFromHoldAuditEventUnitTest extends BaseUnitTest
|
|||||||
* Check that the remove from hold event calls an audit event.
|
* Check that the remove from hold event calls an audit event.
|
||||||
*/
|
*/
|
||||||
@Test
|
@Test
|
||||||
public void testAddToHoldCausesAuditEvent()
|
public void testRemoveFromHoldCausesAuditEvent()
|
||||||
{
|
{
|
||||||
removeFromHoldAuditEvent.onRemoveFromHold(holdNodeRef, contentNodeRef);
|
removeFromHoldAuditEvent.onRemoveFromHold(holdNodeRef, contentNodeRef);
|
||||||
verify(mockedRecordsManagementAuditService, times(1)).auditEvent(eq(contentNodeRef), any(String.class), any(Map.class), isNull(Map.class), eq(true));
|
verify(mockedRecordsManagementAuditService, times(1)).auditEvent(eq(contentNodeRef), any(String.class), any(Map.class), isNull(Map.class), eq(true));
|
||||||
|
@@ -477,7 +477,6 @@ public class HoldServiceImplUnitTest extends BaseUnitTest
|
|||||||
verify(mockedNodeService, never()).removeChild(hold, recordFolder);
|
verify(mockedNodeService, never()).removeChild(hold, recordFolder);
|
||||||
verify(mockedNodeService, never()).removeAspect(recordFolder, ASPECT_FROZEN);
|
verify(mockedNodeService, never()).removeAspect(recordFolder, ASPECT_FROZEN);
|
||||||
verify(mockedNodeService, never()).removeAspect(record, ASPECT_FROZEN);
|
verify(mockedNodeService, never()).removeAspect(record, ASPECT_FROZEN);
|
||||||
verify(mockedRecordsManagementAuditService, never()).auditEvent(eq(recordFolder), anyString());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
Reference in New Issue
Block a user