use of example.nontransferable.ContainerWithPackageShare in project elide by yahoo.
the class PersistentResourceTest method testTransferPermissionSuccessOnUpdateManyRelationshipPackageLevel.
@Test
public void testTransferPermissionSuccessOnUpdateManyRelationshipPackageLevel() {
ContainerWithPackageShare containerWithPackageShare = new ContainerWithPackageShare();
ShareableWithPackageShare shareableWithPackageShare = new ShareableWithPackageShare();
shareableWithPackageShare.setContainerWithPackageShare(containerWithPackageShare);
List<Resource> shareableList = new ArrayList<>();
shareableList.add(new ResourceIdentifier("shareableWithPackageShare", "1").castToResource());
Relationship shareables = new Relationship(null, new Data<>(shareableList));
when(tx.loadObject(any(), eq(1L), any())).thenReturn(shareableWithPackageShare);
RequestScope goodScope = buildRequestScope(tx, goodUser);
PersistentResource<ContainerWithPackageShare> containerResource = new PersistentResource<>(containerWithPackageShare, goodScope.getUUIDFor(containerWithPackageShare), goodScope);
containerResource.updateRelation("shareableWithPackageShares", shareables.toPersistentResources(goodScope));
assertEquals(1, containerWithPackageShare.getShareableWithPackageShares().size());
assertTrue(containerWithPackageShare.getShareableWithPackageShares().contains(shareableWithPackageShare));
}
use of example.nontransferable.ContainerWithPackageShare in project elide by yahoo.
the class PersistentResourceTest method testTransferPermissionErrorOnUpdateRelationshipPackageLevel.
@Test
public void testTransferPermissionErrorOnUpdateRelationshipPackageLevel() {
ContainerWithPackageShare containerWithPackageShare = new ContainerWithPackageShare();
Untransferable untransferable = new Untransferable();
untransferable.setContainerWithPackageShare(containerWithPackageShare);
List<Resource> unShareableList = new ArrayList<>();
unShareableList.add(new ResourceIdentifier("untransferable", "1").castToResource());
Relationship unShareales = new Relationship(null, new Data<>(unShareableList));
when(tx.loadObject(any(), eq(1L), any())).thenReturn(untransferable);
RequestScope goodScope = buildRequestScope(tx, goodUser);
PersistentResource<ContainerWithPackageShare> containerResource = new PersistentResource<>(containerWithPackageShare, goodScope.getUUIDFor(containerWithPackageShare), goodScope);
assertThrows(ForbiddenAccessException.class, () -> containerResource.updateRelation("untransferables", unShareales.toPersistentResources(goodScope)));
}
Aggregations