diff options
author | Jon Bratseth <bratseth@verizonmedia.com> | 2019-08-13 11:13:07 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@verizonmedia.com> | 2019-08-13 11:13:07 +0200 |
commit | b409418b183cde062f2ab67d8d96f3079aa334eb (patch) | |
tree | 81237689d9ab192a6704ea68963fe3502f32f917 /container-search/src/test | |
parent | 2795a634432eb67b01af0ae94a2988b81da6f0ff (diff) |
Add test from baldersheim
Diffstat (limited to 'container-search/src/test')
-rw-r--r-- | container-search/src/test/java/com/yahoo/prelude/query/test/SameElementItemTestCase.java | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/container-search/src/test/java/com/yahoo/prelude/query/test/SameElementItemTestCase.java b/container-search/src/test/java/com/yahoo/prelude/query/test/SameElementItemTestCase.java index ae9960f6c7c..1382c106ae3 100644 --- a/container-search/src/test/java/com/yahoo/prelude/query/test/SameElementItemTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/query/test/SameElementItemTestCase.java @@ -2,11 +2,17 @@ package com.yahoo.prelude.query.test; import com.yahoo.prelude.query.AndItem; +import com.yahoo.prelude.query.IntItem; +import com.yahoo.prelude.query.Item; import com.yahoo.prelude.query.SameElementItem; +import com.yahoo.prelude.query.TermItem; import com.yahoo.prelude.query.WordItem; import org.junit.Test; +import java.util.Optional; + import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; public class SameElementItemTestCase { @@ -85,4 +91,27 @@ public class SameElementItemTestCase { } } + private void verifyExtractSingle(TermItem term) { + String subFieldName = term.getIndexName(); + SameElementItem s = new SameElementItem("structa"); + s.addItem(term); + Optional<Item> single =s.extractSingleChild(); + assertTrue(single.isPresent()); + assertEquals(((TermItem)single.get()).getIndexName(), s.getFieldName() + "." + subFieldName); + } + + @Test + public void requireExtractSingleItemToExtractSingles() { + verifyExtractSingle(new WordItem("b", "f1")); + verifyExtractSingle(new IntItem("7", "f1")); + } + + @Test + public void requireExtractSingleItemToExtractSinglesOnly() { + SameElementItem s = new SameElementItem("structa"); + s.addItem(new WordItem("b", "f1")); + s.addItem(new WordItem("c", "f2")); + assertTrue(s.extractSingleChild().isEmpty()); + } + } |