Added some tests for issues described in certain forum posts, like thread 86640.

This commit is contained in:
Ulrik Sandberg
2010-03-28 22:22:42 +00:00
parent c6fba9a763
commit c7b17868b7
2 changed files with 30 additions and 2 deletions

View File

@@ -20,6 +20,9 @@ import static junit.framework.Assert.assertTrue;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.ldap.core.DistinguishedName;
import org.springframework.ldap.core.LdapTemplate;
import org.springframework.ldap.core.support.CountNameClassPairCallbackHandler;
import org.springframework.ldap.itest.filter.DummyFilterConsumer;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
@@ -27,17 +30,28 @@ import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
/**
* @author Mattias Hellborg Arthursson
*/
@ContextConfiguration(locations = { "/conf/hardcodedFilterTestContext.xml" })
@ContextConfiguration(locations = { "/conf/hardcodedFilterTestContext.xml", "/conf/ldapTemplateTestContext.xml" })
public class HardcodedFilterIntegrationTest extends AbstractJUnit4SpringContextTests {
@Autowired
private DummyFilterConsumer dummyFilterConsumer;
@Autowired
private LdapTemplate ldapTemplate;
@Test
public void verifyThatFilterEditorWorks() {
Filter filter = dummyFilterConsumer.getFilter();
assertTrue(filter instanceof HardcodedFilter);
assertEquals("(&(objectclass=person)(!(objectclass=computer))", filter.toString());
}
@Test
public void verifyThatWildcardsAreUnescaped() {
HardcodedFilter filter = new HardcodedFilter("cn=Some*");
CountNameClassPairCallbackHandler handler = new CountNameClassPairCallbackHandler();
ldapTemplate.search(DistinguishedName.EMPTY_PATH, filter.encode(), handler);
int hits = handler.getNoOfRows();
assertTrue("expected more than one hit, got " + hits, hits > 1);
}
}