1
0
mirror of synced 2026-08-04 09:17:02 +00:00

Change search object to use constructor injection (SEC-165) .

This commit is contained in:
Luke Taylor
2006-02-03 19:53:08 +00:00
parent 436fcde10b
commit 842ad929a4
3 changed files with 51 additions and 40 deletions
@@ -45,7 +45,6 @@ public class DefaultInitialDirContextFactoryTests extends AbstractLdapServerTest
assertEquals("dc=acegisecurity,dc=org", idf.getRootDn());
}
public void testConnectionFailure() throws Exception {
// Use the wrong port
idf = new DefaultInitialDirContextFactory("ldap://localhost:60389");
@@ -3,7 +3,6 @@ package org.acegisecurity.providers.ldap.search;
import org.acegisecurity.providers.ldap.AbstractLdapServerTestCase;
import org.acegisecurity.providers.ldap.DefaultInitialDirContextFactory;
import org.acegisecurity.providers.ldap.LdapUserInfo;
import org.acegisecurity.providers.ldap.search.FilterBasedLdapUserSearch;
import org.acegisecurity.userdetails.UsernameNotFoundException;
import org.acegisecurity.BadCredentialsException;
@@ -15,7 +14,6 @@ import org.acegisecurity.BadCredentialsException;
*/
public class FilterBasedLdapUserSearchTests extends AbstractLdapServerTestCase {
private DefaultInitialDirContextFactory dirCtxFactory;
private FilterBasedLdapUserSearch locator;
public void setUp() throws Exception {
dirCtxFactory = new DefaultInitialDirContextFactory(PROVIDER_URL);
@@ -23,10 +21,6 @@ public class FilterBasedLdapUserSearchTests extends AbstractLdapServerTestCase {
dirCtxFactory.setExtraEnvVars(EXTRA_ENV);
dirCtxFactory.setManagerDn(MANAGER_USER);
dirCtxFactory.setManagerPassword(MANAGER_PASSWORD);
locator = new FilterBasedLdapUserSearch();
locator.setSearchSubtree(false);
locator.setSearchTimeLimit(0);
locator.setInitialDirContextFactory(dirCtxFactory);
}
public FilterBasedLdapUserSearchTests(String string) {
@@ -38,26 +32,28 @@ public class FilterBasedLdapUserSearchTests extends AbstractLdapServerTestCase {
}
public void testBasicSearch() throws Exception {
locator.setSearchBase("ou=people");
locator.setSearchFilter("(uid={0})");
locator.afterPropertiesSet();
FilterBasedLdapUserSearch locator =
new FilterBasedLdapUserSearch("ou=people", "(uid={0})", dirCtxFactory);
LdapUserInfo bob = locator.searchForUser("bob");
locator.setSearchSubtree(false);
locator.setSearchTimeLimit(0);
// name is wrong with embedded apacheDS
// assertEquals("uid=bob,ou=people,"+ROOT_DN, bob.getDn());
}
public void testSubTreeSearchSucceeds() throws Exception {
// Don't set the searchBase, so search from the root.
locator.setSearchFilter("(cn={0})");
FilterBasedLdapUserSearch locator =
new FilterBasedLdapUserSearch("", "(cn={0})", dirCtxFactory);
locator.setSearchSubtree(true);
locator.afterPropertiesSet();
LdapUserInfo ben = locator.searchForUser("Ben Alex");
// assertEquals("uid=ben,ou=people,"+ROOT_DN, bob.getDn());
}
public void testSearchForInvalidUserFails() {
locator.setSearchBase("ou=people");
locator.setSearchFilter("(uid={0})");
FilterBasedLdapUserSearch locator =
new FilterBasedLdapUserSearch("ou=people", "(uid={0})", dirCtxFactory);
try {
locator.searchForUser("Joe");
@@ -67,8 +63,8 @@ public class FilterBasedLdapUserSearchTests extends AbstractLdapServerTestCase {
}
public void testFailsOnMultipleMatches() {
locator.setSearchBase("ou=people");
locator.setSearchFilter("(cn=*)");
FilterBasedLdapUserSearch locator =
new FilterBasedLdapUserSearch("ou=people", "(cn=*)", dirCtxFactory);
try {
locator.searchForUser("Ignored");
@@ -80,8 +76,10 @@ public class FilterBasedLdapUserSearchTests extends AbstractLdapServerTestCase {
// Try some funny business with filters.
public void testExtraFilterPartToExcludeBob() throws Exception {
locator.setSearchBase("ou=people");
locator.setSearchFilter("(&(cn=*)(!(|(uid={0})(uid=marissa))))");
FilterBasedLdapUserSearch locator =
new FilterBasedLdapUserSearch("ou=people",
"(&(cn=*)(!(|(uid={0})(uid=marissa))))",
dirCtxFactory);
// Search for bob, get back ben...
LdapUserInfo ben = locator.searchForUser("bob");