summaryrefslogtreecommitdiffstats
path: root/container-search/src/test/java/com
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@broadpark.no>2018-10-11 12:08:04 +0200
committerTor Egge <Tor.Egge@broadpark.no>2018-10-11 12:09:17 +0200
commitb465c6e8aa3e5e0ac4fbdd9814b813e1c845457a (patch)
tree463f970cf9ab7a383a5fc5811733bd8fa8d7c8e4 /container-search/src/test/java/com
parent4ff6c2ae4efe291df5d420e75a4de7d61d961cc5 (diff)
Handle lowercase for word items below a same element item.
Calculate proper name for lookup in index facts to check if lowercasing should be performed.
Diffstat (limited to 'container-search/src/test/java/com')
-rw-r--r--container-search/src/test/java/com/yahoo/search/querytransform/LowercasingTestCase.java23
1 files changed, 23 insertions, 0 deletions
diff --git a/container-search/src/test/java/com/yahoo/search/querytransform/LowercasingTestCase.java b/container-search/src/test/java/com/yahoo/search/querytransform/LowercasingTestCase.java
index 7430b075140..4b2da823271 100644
--- a/container-search/src/test/java/com/yahoo/search/querytransform/LowercasingTestCase.java
+++ b/container-search/src/test/java/com/yahoo/search/querytransform/LowercasingTestCase.java
@@ -7,6 +7,7 @@ import static org.junit.Assert.assertEquals;
import java.util.ArrayList;
import java.util.List;
+import com.yahoo.prelude.query.SameElementItem;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -36,6 +37,7 @@ public class LowercasingTestCase {
private static final String TEDDY = "teddy";
private static final String BAMSE = "bamse";
+ private static final String SARR = "sarr";
IndexFacts settings;
Execution execution;
@@ -44,13 +46,19 @@ public class LowercasingTestCase {
IndexFacts f = new IndexFacts();
Index bamse = new Index(BAMSE);
Index teddy = new Index(TEDDY);
+ Index sarrBamse = new Index(SARR + "." + BAMSE);
+ Index sarrTeddy = new Index(SARR + "." + TEDDY);
Index defaultIndex = new Index("default");
bamse.setLowercase(true);
teddy.setLowercase(false);
+ sarrBamse.setLowercase(true);
+ sarrTeddy.setLowercase(true);
defaultIndex.setLowercase(true);
f.addIndex("nalle", bamse);
f.addIndex("nalle", teddy);
f.addIndex("nalle", defaultIndex);
+ f.addIndex("nalle", sarrBamse);
+ f.addIndex("nalle", sarrTeddy);
f.freeze();
settings = f;
execution = new Execution(new Chain<Searcher>(
@@ -214,4 +222,19 @@ public class LowercasingTestCase {
assertEquals("def", root.getAlternatives().get(2).word);
assertEquals(1.0d, root.getAlternatives().get(2).exactness, 1e-15d);
}
+
+ @Test
+ public void testLowercaseingSameElement() {
+ Query q = new Query();
+ SameElementItem root = new SameElementItem(SARR);
+ root.addItem(new WordItem("ABC", BAMSE, true));
+ root.addItem(new WordItem("DEF", TEDDY, true));
+ q.getModel().getQueryTree().setRoot(root);
+ Result r = execution.search(q);
+ root = (SameElementItem) r.getQuery().getModel().getQueryTree().getRoot();
+ WordItem w0 = (WordItem) root.getItem(0);
+ WordItem w1 = (WordItem) root.getItem(1);
+ assertEquals("abc", w0.getWord());
+ assertEquals("def", w1.getWord());
+ }
}