use of org.apache.jackrabbit.api.security.user.Group in project jackrabbit-oak by apache.
the class DefaultSyncContextTest method testSyncExternalToForeignLocalGroup.
@Test
public void testSyncExternalToForeignLocalGroup() throws Exception {
ExternalGroup external = idp.listGroups().next();
syncCtx.sync(external);
Group gr = userManager.getAuthorizable(external.getId(), Group.class);
setExternalID(gr, "differentIDP");
SyncResult result = syncCtx.sync(external);
assertEquals(SyncResult.Status.FOREIGN, result.getStatus());
SyncedIdentity si = result.getIdentity();
assertNotNull(si);
assertEquals(external.getExternalId(), si.getExternalIdRef());
}
use of org.apache.jackrabbit.api.security.user.Group in project jackrabbit-oak by apache.
the class DefaultSyncContextTest method testGetAuthorizableGroup.
@Test
public void testGetAuthorizableGroup() throws Exception {
ExternalIdentity extGroup = idp.listGroups().next();
Group gr = syncCtx.getAuthorizable(extGroup, Group.class);
assertNull(gr);
sync(extGroup);
gr = syncCtx.getAuthorizable(extGroup, Group.class);
assertNotNull(gr);
}
use of org.apache.jackrabbit.api.security.user.Group in project jackrabbit-oak by apache.
the class DefaultSyncContextTest method testIsSameIDPForeign.
@Test
public void testIsSameIDPForeign() throws Exception {
Group gr = createTestGroup();
setExternalID(gr, "some_other_idp");
assertFalse(syncCtx.isSameIDP(gr));
}
use of org.apache.jackrabbit.api.security.user.Group in project jackrabbit-oak by apache.
the class DynamicSyncContextTest method testSyncUserIdExistingGroups.
@Test
public void testSyncUserIdExistingGroups() throws Exception {
ExternalUser externalUser = idp.getUser(USER_ID);
DefaultSyncContext ctx = new DefaultSyncContext(syncConfig, idp, userManager, valueFactory);
ctx.sync(externalUser);
ctx.close();
Authorizable user = userManager.getAuthorizable(externalUser.getId());
for (ExternalIdentityRef ref : externalUser.getDeclaredGroups()) {
Group gr = userManager.getAuthorizable(ref.getId(), Group.class);
assertTrue(gr.isMember(user));
}
syncContext.setForceUserSync(true);
syncContext.sync(externalUser.getId());
Authorizable a = userManager.getAuthorizable(USER_ID);
Tree t = r.getTree(a.getPath());
assertFalse(t.hasProperty(ExternalIdentityConstants.REP_EXTERNAL_PRINCIPAL_NAMES));
assertSyncedMembership(userManager, a, externalUser);
}
use of org.apache.jackrabbit.api.security.user.Group in project jackrabbit-oak by apache.
the class DefaultSyncContextTest method testSyncExternalToExistingLocalGroup.
@Test
public void testSyncExternalToExistingLocalGroup() throws Exception {
ExternalGroup external = idp.listGroups().next();
syncCtx.sync(external);
Group gr = userManager.getAuthorizable(external.getId(), Group.class);
gr.removeProperty(ExternalIdentityConstants.REP_EXTERNAL_ID);
SyncResult result = syncCtx.sync(external);
assertEquals(SyncResult.Status.FOREIGN, result.getStatus());
SyncedIdentity si = result.getIdentity();
assertNotNull(si);
assertEquals(external.getExternalId(), si.getExternalIdRef());
}
Aggregations