@Override protected void runTest() throws Exception { bean.syncAllExternalUsers(); } }
@NotNull @Override public String[] syncAllExternalUsers() { Delegatee delegatee = getDelegatee(); try { return delegatee.syncAllExternalUsers(); } finally { delegatee.close(); } }
@NotNull @Override public String[] syncAllUsers(boolean purge) { Delegatee delegatee = getDelegatee(); try { return delegatee.syncAllUsers(purge); } finally { delegatee.close(); } }
@Test public void testSyncAllUsersThrowingHandler2() throws Exception { syncMBean.syncAllExternalUsers(); Map<String, String> expected = getExpectedUserResult("ERR", true); String[] result = createThrowingSyncMBean(true).syncAllUsers(false); assertResultMessages(result, expected); }
private SyncMBeanImpl createSyncMBeanImpl(@NotNull String syncHandlerName, @NotNull String idpName) { return new SyncMBeanImpl(getContentRepository(), getSecurityProvider(), syncMgr, syncHandlerName, idpMgr, idpName); }
@NotNull @Override public String[] purgeOrphanedUsers() { Delegatee delegatee = getDelegatee(); try { return delegatee.purgeOrphanedUsers(); } finally { delegatee.close(); } } }
@NotNull @Override public String[] syncUsers(@NotNull String[] userIds, boolean purge) { Delegatee delegatee = getDelegatee(); try { return delegatee.syncUsers(userIds, purge); } finally { delegatee.close(); } }
@NotNull @Override public String[] syncExternalUsers(@NotNull String[] externalIds) { Delegatee delegatee = getDelegatee(); try { return delegatee.syncExternalUsers(externalIds); } finally { delegatee.close(); } }
@NotNull @Override public String[] listOrphanedUsers() { Delegatee delegatee = getDelegatee(); try { return delegatee.listOrphanedUsers(); } finally { delegatee.close(); } }
@Test public void testSyncUserThrowingHandler() throws Exception { sync(idp, TestIdentityProvider.ID_TEST_USER, false); String[] result = createThrowingSyncMBean(false).syncUsers(new String[]{TestIdentityProvider.ID_TEST_USER}, false); assertResultMessages(result, TestIdentityProvider.ID_TEST_USER, "ERR"); }
@Test public void testSyncUsers() throws Exception { sync(idp, TestIdentityProvider.ID_TEST_USER, false); String[] userIds = new String[]{TestIdentityProvider.ID_TEST_USER, TestIdentityProvider.ID_SECOND_USER}; String[] result = syncMBean.syncUsers(userIds, false); assertResultMessages(result, ImmutableMap.of(TestIdentityProvider.ID_TEST_USER, "upd", TestIdentityProvider.ID_SECOND_USER, "nsa")); result = syncMBean.syncUsers(userIds, true); assertResultMessages(result, ImmutableMap.of(TestIdentityProvider.ID_TEST_USER, "upd", TestIdentityProvider.ID_SECOND_USER, "nsa")); }
@Test(expected = SyncRuntimeException.class) public void testSyncAllExternalUsersThrowingIDP() { Delegatee dg = createDelegatee(new TestIdentityProvider("throwing") { @NotNull @Override public Iterator<ExternalUser> listUsers() throws ExternalIdentityException { throw new ExternalIdentityException(); } }); dg.syncAllExternalUsers(); }
@Test public void testSyncUsersLocal() { String[] result = syncMBean.syncUsers(new String[] {UserConstants.DEFAULT_ANONYMOUS_ID}, false); assertResultMessages(result, UserConstants.DEFAULT_ANONYMOUS_ID, "for"); }
@Test(expected = IllegalStateException.class) public void testSyncAllUsersThrowingHandler() { String[] result = createThrowingSyncMBean(false).syncAllUsers(false); }
/** * @see <a href="https://issues.apache.org/jira/browse/OAK-4346">OAK-4346</a> */ @Test public void testSyncExternalForeign() { ExternalIdentityRef ref = new ExternalIdentityRef(TestIdentityProvider.ID_TEST_USER, "anotherIDP"); String[] result = syncMBean.syncExternalUsers(new String[]{ref.getString()}); assertResultMessages(result, TestIdentityProvider.ID_TEST_USER, "for"); result = syncMBean.syncExternalUsers(new String[] {ref.getString()}); assertResultMessages(result, TestIdentityProvider.ID_TEST_USER, "for"); }
@Before public void before() throws Exception { super.before(); delegatee = createDelegatee(new TestIdentityProvider()); }
@Test public void testSyncAllExternalUsersThrowingHandler() throws Exception { String[] result = createThrowingSyncMBean(false).syncAllExternalUsers(); Map<String, String> expected = getExpectedUserResult("ERR", false); assertResultMessages(result, expected); }
private SyncMBeanImpl createThrowingSyncMBean(boolean allowListIdentities) { String name = (allowListIdentities) ? ThrowingSyncHandler.NAME_ALLOWS_IDENTITY_LISTING : ThrowingSyncHandler.NAME; return new SyncMBeanImpl(getContentRepository(), getSecurityProvider(), syncMgr, name, idpMgr, idp.getName()); }
@Test public void testSyncUsersNonExisting() { String[] result = syncMBean.syncUsers(new String[] {"nonExisting"}, false); assertResultMessages(result, "nonExisting", "nsa"); }