From 8072d3e6241917a2afcfb7fed049864743a60500 Mon Sep 17 00:00:00 2001
From: Fabio Pistolesi <fabio.pistolesi@forgerock.com>
Date: Wed, 02 Mar 2016 11:05:33 +0000
Subject: [PATCH] OPENDJ-2731 Middle and final substring indexes fail to return resulting in an unindexed search.

---
 opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/PluggableBackendImplTestCase.java |   22 +++++++++++++++++++++-
 1 files changed, 21 insertions(+), 1 deletions(-)

diff --git a/opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/PluggableBackendImplTestCase.java b/opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/PluggableBackendImplTestCase.java
index b989d95..c678d95 100644
--- a/opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/PluggableBackendImplTestCase.java
+++ b/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[][] {

--
Gitblit v1.10.0