private Properties createUserInfoProperties(SearchScope searchScope) { Properties properties = createUserInfoProperties(); properties.setProperty(LDAPUserInfoImpl.SEARCH_SCOPE, searchScope.name()); return properties; }
private UserInfo createLdapUserInfoWithUserCtx(SearchScope searchScope, String userCtx) { Properties properties = createUserInfoProperties(searchScope); properties.setProperty(LDAPUserInfoImpl.USER_CTX, userCtx); return createLdapUserInfoUid(properties); }
private UserInfo createLdapUserInfoWithGroupCtx(SearchScope searchScope, String groupCtx) { Properties properties = createUserInfoProperties(searchScope); properties.setProperty(LDAPUserInfoImpl.ROLE_CTX, groupCtx); return createLdapUserInfoCn(properties); }
private void testGetEntityForEmail(String email, String expected, boolean useDN) { Properties properties = createUserInfoProperties(); if (useDN) { properties.setProperty(LDAPUserInfoImpl.IS_ENTITY_ID_DN, "true"); } UserInfo ldapUserInfo = new LDAPUserInfoImpl(properties); Assertions.assertThat(ldapUserInfo.getEntityForEmail(email)).isEqualTo(expected); }
private void testGetLanguageForEntity(OrganizationalEntity entity, String language, boolean customAttribute) { Properties properties = createUserInfoProperties(); if (customAttribute) { properties.setProperty(LDAPUserInfoImpl.LANG_ATTR_ID, "language"); } if (entity.getId().startsWith("uid=") || entity.getId().startsWith("cn=")) { properties.setProperty(LDAPUserInfoImpl.IS_ENTITY_ID_DN, "true"); } UserInfo ldapUserInfo = new LDAPUserInfoImpl(properties); Assertions.assertThat(ldapUserInfo.getLanguageForEntity(entity)).isEqualTo(language); }
private void testHasEmail(Group group, boolean hasEmail, boolean customAttribute) { Properties properties = createUserInfoProperties(); if (customAttribute) { properties.setProperty(LDAPUserInfoImpl.EMAIL_ATTR_ID, "email"); } if (group.getId().startsWith("cn=")) { properties.setProperty(LDAPUserInfoImpl.IS_ENTITY_ID_DN, "true"); } UserInfo ldapUserInfo = new LDAPUserInfoImpl(properties); Assertions.assertThat(ldapUserInfo.hasEmail(group)).isEqualTo(hasEmail); }
private void testGetEmailForEntity(OrganizationalEntity entity, String email, boolean customAttribute) { Properties properties = createUserInfoProperties(); if (customAttribute) { properties.setProperty(LDAPUserInfoImpl.EMAIL_ATTR_ID, "email"); } if (entity.getId().startsWith("uid=") || entity.getId().startsWith("cn=")) { properties.setProperty(LDAPUserInfoImpl.IS_ENTITY_ID_DN, "true"); } UserInfo ldapUserInfo = new LDAPUserInfoImpl(properties); Assertions.assertThat(ldapUserInfo.getEmailForEntity(entity)).isEqualTo(email); }
private void testGetDisplayName(OrganizationalEntity entity, String expectedName, boolean customAttribute) { Properties properties = createUserInfoProperties(); if (customAttribute) { properties.setProperty(LDAPUserInfoImpl.NAME_ATTR_ID, "name"); } if (entity.getId().startsWith("uid=") || entity.getId().startsWith("cn=")) { properties.setProperty(LDAPUserInfoImpl.IS_ENTITY_ID_DN, "true"); } UserInfo ldapUserInfo = new LDAPUserInfoImpl(properties); String name = ldapUserInfo.getDisplayName(entity); Assertions.assertThat(name).isNotNull(); Assertions.assertThat(name).isEqualTo(expectedName); }
@Test public void testUsersInvalidScope() { Properties properties = createUserInfoProperties(); properties.setProperty(LDAPUserInfoImpl.SEARCH_SCOPE, "xyz"); UserInfo ldapUserInfo = createLdapUserInfoUid(properties); assertUsers(ldapUserInfo, true, true, false, false); }
@Test public void testGroupsInvalidScope() { Properties properties = createUserInfoProperties(); properties.setProperty(LDAPUserInfoImpl.SEARCH_SCOPE, "xyz"); UserInfo ldapUserInfo = createLdapUserInfoCn(properties); assertGroups(ldapUserInfo, true, true, false, false); }
private void testGetMembersForGroup(boolean emptyGroup, boolean customAttribute, boolean distinguishedName) { Properties properties = createUserInfoProperties(); if (customAttribute) { properties.setProperty(LDAPUserInfoImpl.MEMBER_ATTR_ID, "representative"); } if (distinguishedName) { properties.setProperty(LDAPUserInfoImpl.IS_ENTITY_ID_DN, "true"); } UserInfo ldapUserInfo = new LDAPUserInfoImpl(properties); Group group; if (distinguishedName) { group = emptyGroup ? USER_DN : MANAGER_DN; } else { group = emptyGroup ? USER : MANAGER; } Iterator<OrganizationalEntity> iterator = ldapUserInfo.getMembersForGroup(group); if (emptyGroup) { Assertions.assertThat(iterator.hasNext()).isFalse(); return; } Assertions.assertThat(iterator.hasNext()).isTrue(); User user = (User) iterator.next(); if (customAttribute) { Assertions.assertThat(user.getId()).isEqualTo(MARY_DN.getId()); } else { Assertions.assertThat(user.getId()).isEqualTo(JOHN_DN.getId()); } Assertions.assertThat(iterator.hasNext()).isFalse(); }
@Test public void testUsersDefaultScope() { UserInfo ldapUserInfo = createLdapUserInfoUid(createUserInfoProperties()); assertUsers(ldapUserInfo, true, true, false, false); }
@Test public void testGroupsDefaultScope() { UserInfo ldapUserInfo = createLdapUserInfoCn(createUserInfoProperties()); assertGroups(ldapUserInfo, true, true, false, false); }