mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Fabio Pistolesi
01.29.2016 8072d3e6241917a2afcfb7fed049864743a60500
OPENDJ-2731 Middle and final substring indexes fail to return resulting in an unindexed search.

Improve unit tests on substring indexes.
Covers all three cases for wildcard substring filter specifications.
1 files modified
22 ■■■■■ changed files
opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/PluggableBackendImplTestCase.java 22 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/PluggableBackendImplTestCase.java
@@ -818,6 +818,26 @@
    assertThat(runSearch(request, false)).isEmpty();
  }
  @DataProvider
  protected Object[][] subStringSearchFilter()
  {
    return new Object[][] {
      // @formatter:off
      { "sn=abadin*", 1},
      { "sn=*abadin*", 1},
      { "sn=*abadin", 0},
      { "sn=*adines", 1}
      // @formatter:on
    };
  }
  @Test(dataProvider = "subStringSearchFilter")
  public void testFilterUsingSubStringSearch(final String filter, int numberOfEntries) throws Exception
  {
    SearchRequest request = newSearchRequest(testBaseDN, SearchScope.WHOLE_SUBTREE, filter);
    assertThat(runSearch(request, false)).hasSize(numberOfEntries);
  }
  @Test
  public void testSearchIsConsideredUnindexedBasedOnLookThroughLimit() throws DirectoryException {
    final int nbEntries = topEntries.size() + entries.size() + workEntries.size();
@@ -853,7 +873,7 @@
  }
  @DataProvider(name = "userEntrySearchData")
  @DataProvider
  protected Object[][] userEntrySearchData()
  {
    return new Object[][] {