diff --git a/core/src/test/java/org/acegisecurity/ldap/LdapTemplateTests.java b/core/src/test/java/org/acegisecurity/ldap/SpringSecurityLdapTemplateTests.java similarity index 87% rename from core/src/test/java/org/acegisecurity/ldap/LdapTemplateTests.java rename to core/src/test/java/org/acegisecurity/ldap/SpringSecurityLdapTemplateTests.java index bebfb63548..02a595a67e 100644 --- a/core/src/test/java/org/acegisecurity/ldap/LdapTemplateTests.java +++ b/core/src/test/java/org/acegisecurity/ldap/SpringSecurityLdapTemplateTests.java @@ -28,7 +28,7 @@ import javax.naming.directory.DirContext; * @author Luke Taylor * @version $Id$ */ -public class LdapTemplateTests extends AbstractLdapIntegrationTests { +public class SpringSecurityLdapTemplateTests extends AbstractLdapIntegrationTests { //~ Instance fields ================================================================================================ private SpringSecurityLdapTemplate template; @@ -75,7 +75,7 @@ public class LdapTemplateTests extends AbstractLdapIntegrationTests { } catch (UncategorizedLdapException expected) {} } - public void testSearchForSingleAttributeValues() { + public void testRoleSearchReturnsCorrectNumberOfRoles() { String param = "uid=ben,ou=people,dc=acegisecurity,dc=org"; Set values = template.searchForSingleAttributeValues("ou=groups", "(member={0})", new String[] {param}, "ou"); @@ -85,4 +85,12 @@ public class LdapTemplateTests extends AbstractLdapIntegrationTests { assertTrue(values.contains("manager")); assertTrue(values.contains("submanager")); } + + public void testRoleSearchForMissingAttributeFailsGracefully() { + String param = "uid=ben,ou=people,dc=acegisecurity,dc=org"; + + Set values = template.searchForSingleAttributeValues("ou=groups", "(member={0})", new String[] {param}, "mail"); + + assertEquals(0, values.size()); + } }