Addressing review comment - don't have assoc types in the service API - have aspect names instead.

I agree with this comment. I think assoc types are an implementation detail of this service.



git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/BRANCHES/classified_renditions@111779 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Neil McErlean
2015-09-09 10:42:29 +00:00
parent 3efb64f11b
commit aeafa9fbbd
8 changed files with 46 additions and 69 deletions

View File

@@ -142,7 +142,7 @@ public class ClassifiedAspectUnitTest implements ClassifiedContentModel
for (NodeRef rendition : asList(RENDITION_1, RENDITION_2))
{
verify(mockReferralAdminService).attachReferrer(rendition, NODE_REF, ASSOC_CLASSIFIED_RENDITION);
verify(mockReferralAdminService).attachReferrer(rendition, NODE_REF, ASPECT_CLASSIFIED);
}
}

View File

@@ -84,17 +84,17 @@ public class ReferralAdminServiceImplUnitTest
}
@Test(expected=IllegalArgumentException.class)
public void attachingReferrerWithNoAssociationConfiguredShouldFail()
public void attachingReferrerWithNoAspectConfiguredShouldFail()
{
referralAdminService.attachReferrer(node2, node1, assoc1);
referralAdminService.attachReferrer(node2, node1, aspect1);
}
@Test public void attachDetach()
{
when(mockRegistry.getReferralForAssociation(assoc1)).thenReturn(referral1);
when(mockRegistry.getReferralForAspect(aspect1)).thenReturn(referral1);
// attach
MetadataReferral d = attachReferrer(node1, node2, assoc1);
MetadataReferral d = attachReferrer(node1, node2, aspect1);
// validate
assertEquals(assoc1, d.getAssocType());
@@ -103,24 +103,25 @@ public class ReferralAdminServiceImplUnitTest
assertFalse(mockReferredMetadataService.isReferringMetadata(node1, aspect3));
// detach
assertEquals(d, referralAdminService.detachReferrer(node1, assoc1));
assertEquals(d, referralAdminService.detachReferrer(node1, aspect1));
}
private MetadataReferral attachReferrer(NodeRef referrer, NodeRef referent, QName assocType)
private MetadataReferral attachReferrer(NodeRef referrer, NodeRef referent, QName aspectName)
{
MetadataReferral d = referralAdminService.attachReferrer(referrer, referent, assocType);
MetadataReferral mr = referralAdminService.attachReferrer(referrer, referent, aspectName);
final QName assocType = mr.getAssocType();
when(mockNodeService.getSourceAssocs(referent, assocType)).thenReturn(asList(new AssociationRef(referrer, assocType, referent)));
when(mockNodeService.getTargetAssocs(referrer, assocType)).thenReturn(asList(new AssociationRef(referrer, assocType, referent)));
for (QName aspect : d.getAspects())
for (QName aspect : mr.getAspects())
{
when(mockReferredMetadataService.isReferringMetadata(referrer, aspect)).thenReturn(true);
}
return d;
return mr;
}
@Test public void chainsOfDelegationShouldBePrevented()
{
when(mockRegistry.getReferralForAssociation(assoc1)).thenReturn(referral1);
when(mockRegistry.getReferralForAspect(aspect1)).thenReturn(referral1);
// The node already has a delegation in place: node1 -> node2. We're trying to add to the
// end of the chain: node2 -> node3
@@ -128,13 +129,13 @@ public class ReferralAdminServiceImplUnitTest
when(mockNodeService.getTargetAssocs(node1, assoc1)).thenReturn(asList(new AssociationRef(node1, assoc1, node2)));
expectedException(ChainedMetadataReferralUnsupported.class, () -> {
referralAdminService.attachReferrer(node2, node3, assoc1);
referralAdminService.attachReferrer(node2, node3, aspect1);
return null;
});
// Now try to add to the start of the chain: node3 -> node1
expectedException(ChainedMetadataReferralUnsupported.class, () -> {
referralAdminService.attachReferrer(node3, node1, assoc1);
referralAdminService.attachReferrer(node3, node1, aspect1);
return null;
});
}