/** * Tests {@link SecurityManager#canDeleteActivity(PortalContainer, Identity, ExoSocialActivity)}. */ public void testCanDeleteActivity() { createActivities(demoIdentity, demoIdentity, 2); ExoSocialActivity demoActivity = activityManager.getActivities(demoIdentity).get(1); boolean demoDeleteDemoActivity = SecurityManager.canDeleteActivity(getContainer(), demoIdentity, demoActivity); assertTrue("demoDeleteDemoActivity must be true", demoDeleteDemoActivity); boolean maryDeleteDemoActivity = SecurityManager.canDeleteActivity(getContainer(), maryIdentity, demoActivity); assertFalse("maryDeleteDemoActivity must be false", maryDeleteDemoActivity); // demo connects to john createActivities(johnIdentity, johnIdentity, 1); connectIdentities(demoIdentity, johnIdentity, false); ExoSocialActivity johnActivity = activityManager.getActivities(johnIdentity).get(0); boolean demoDeleteJohnActivity = SecurityManager.canDeleteActivity(getContainer(), demoIdentity, johnActivity); assertFalse("demoDeleteDemoActivity must be false", demoDeleteJohnActivity); connectIdentities(demoIdentity, johnIdentity, true); createActivities(demoIdentity, johnIdentity, 1); demoActivity = activityManager.getActivities(johnIdentity).get(0); // newest demoDeleteDemoActivity = SecurityManager.canDeleteActivity(getContainer(), demoIdentity, demoActivity); assertTrue("demoDeleteDemoActivity must be true", demoDeleteDemoActivity); boolean johnDeleteDemoActivity = SecurityManager.canDeleteActivity(getContainer(), johnIdentity, demoActivity); assertTrue("johnDeleteDemoActivity must be true", johnDeleteDemoActivity); // demo, mary, john on a space createSpaces(1); Space createdSpace = tearDownSpaceList.get(0); Identity spaceIdentity = identityManager.getOrCreateIdentity( SpaceIdentityProvider.NAME, createdSpace.getPrettyName(), false); tearDownIdentityList.add(spaceIdentity); createActivities(spaceIdentity, spaceIdentity, 1); ExoSocialActivity spaceActivity = activityManager.getActivities(spaceIdentity).get(0); boolean demoDeleteSpaceActivity = SecurityManager.canDeleteActivity(getContainer(), demoIdentity, spaceActivity); assertTrue("demoDeleteDemoActivity must be true", demoDeleteSpaceActivity); boolean maryDeleteSpaceActivity = SecurityManager.canDeleteActivity(getContainer(), maryIdentity, spaceActivity); assertFalse("maryDeleteSpaceActivity must be false", maryDeleteSpaceActivity); boolean johnDeleteSpaceActivity = SecurityManager.canDeleteActivity(getContainer(), johnIdentity, spaceActivity); assertFalse("johnDeleteSpaceActivity must be false", johnDeleteSpaceActivity); createActivities(demoIdentity, spaceIdentity, 1); ExoSocialActivity demoToSpaceActivity = activityManager.getActivities(spaceIdentity).get(0); boolean demoDeleteDemoToSpaceActivity = SecurityManager.canDeleteActivity(getContainer(), demoIdentity, demoToSpaceActivity); assertTrue("demoDeleteDemoToSpaceActivity must be true", demoDeleteDemoToSpaceActivity); boolean maryDeleteDemoToSpaceActivity = SecurityManager.canDeleteActivity(getContainer(), maryIdentity, demoToSpaceActivity); assertFalse("maryDeleteDemoToSpaceActivity must be false", maryDeleteDemoToSpaceActivity); boolean johnDeleteDemoToSpaceActivity = SecurityManager.canDeleteActivity(getContainer(), johnIdentity, demoToSpaceActivity); assertFalse("johnDeleteDemoToSpaceActivity must be false", johnDeleteDemoToSpaceActivity); }