diff options
Diffstat (limited to 'container-search/src/test/java/com/yahoo/prelude/querytransform')
11 files changed, 365 insertions, 373 deletions
diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/CJKSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/CJKSearcherTestCase.java index b3b96299b90..0c24da54ec4 100644 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/CJKSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/CJKSearcherTestCase.java @@ -18,10 +18,10 @@ import com.yahoo.search.query.parser.ParserEnvironment; import com.yahoo.search.query.parser.ParserFactory; import com.yahoo.search.searchchain.Execution; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; /** * @author Steinar Knutsen @@ -32,9 +32,9 @@ public class CJKSearcherTestCase { "querytransform/test/cjk-index-info.cfg", null); @Test - public void testTermWeight() { + void testTermWeight() { assertTransformed("efg!10", "SAND e!10 fg!10", - Query.Type.ALL, Language.CHINESE_SIMPLIFIED, Language.CHINESE_TRADITIONAL, TestLinguistics.INSTANCE); + Query.Type.ALL, Language.CHINESE_SIMPLIFIED, Language.CHINESE_TRADITIONAL, TestLinguistics.INSTANCE); } /** @@ -43,14 +43,14 @@ public class CJKSearcherTestCase { * must combine overlapping tokens as PHRASE, not AND to avoid a too high recall because of the token overlap. */ @Test - public void testCjkQueryWithOverlappingTokens() { + void testCjkQueryWithOverlappingTokens() { // The test language segmenter will segment "bcd" into the overlapping tokens "bc" "cd" assertTransformed("bcd", "SAND bc cd", Query.Type.ALL, Language.CHINESE_SIMPLIFIED, Language.CHINESE_TRADITIONAL, - TestLinguistics.INSTANCE); + TestLinguistics.INSTANCE); // While "efg" will be segmented into one of the standard options, "e" "fg" assertTransformed("efg", "SAND e fg", Query.Type.ALL, Language.CHINESE_SIMPLIFIED, Language.CHINESE_TRADITIONAL, - TestLinguistics.INSTANCE); + TestLinguistics.INSTANCE); } private void assertTransformed(String queryString, String expected, Query.Type mode, Language actualLanguage, diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/CollapsePhraseSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/CollapsePhraseSearcherTestCase.java index 498d6ca2980..3aaf941c6f5 100644 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/CollapsePhraseSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/CollapsePhraseSearcherTestCase.java @@ -9,12 +9,12 @@ import com.yahoo.prelude.query.PhraseItem; import com.yahoo.prelude.query.WordItem; import com.yahoo.prelude.querytransform.CollapsePhraseSearcher; import com.yahoo.search.searchchain.Execution; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; /** * Check CollapsePhraseSearcher works and only is triggered when it @@ -25,14 +25,14 @@ import static org.junit.Assert.assertEquals; public class CollapsePhraseSearcherTestCase { @Test - public void testSimplePositive() { + void testSimplePositive() { PhraseItem root = new PhraseItem(); root.addItem(new WordItem("abc")); assertEquals("abc", transformQuery(root)); } @Test - public void testPositive1() { + void testPositive1() { AndItem root = new AndItem(); root.addItem(new WordItem("a")); PhraseItem embedded = new PhraseItem(); @@ -40,11 +40,11 @@ public class CollapsePhraseSearcherTestCase { root.addItem(embedded); root.addItem(new WordItem("e")); assertEquals("AND a bcd e", - transformQuery(root)); + transformQuery(root)); } @Test - public void testPositive2() { + void testPositive2() { AndItem root = new AndItem(); root.addItem(new WordItem("a")); CompositeItem embedded = new AndItem(); @@ -55,21 +55,21 @@ public class CollapsePhraseSearcherTestCase { root.addItem(embedded); root.addItem(new WordItem("e")); assertEquals("AND a (AND bcd def) e", - transformQuery(root)); + transformQuery(root)); } @Test - public void testNoTerms() { + void testNoTerms() { assertEquals("NULL", transformQuery("?query=" + enc("\"\""))); } @Test - public void testNegative1() { + void testNegative1() { assertEquals("WEAKAND(100) \"abc def\"", transformQuery("?query=" + enc("\"abc def\""))); } @Test - public void testNegative2() { + void testNegative2() { assertEquals("WEAKAND(100) a \"abc def\" b", transformQuery("?query=" + enc("a \"abc def\" b"))); } @@ -83,7 +83,7 @@ public class CollapsePhraseSearcherTestCase { } @Test - public void testNegative3() { + void testNegative3() { AndItem root = new AndItem(); root.addItem(new WordItem("a")); CompositeItem embedded = new AndItem(); @@ -95,7 +95,7 @@ public class CollapsePhraseSearcherTestCase { root.addItem(embedded); root.addItem(new WordItem("e")); assertEquals("AND a (AND bcd \"def ghi\") e", - transformQuery(root)); + transformQuery(root)); } private String transformQuery(String rawQuery) { diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/LiteralBoostSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/LiteralBoostSearcherTestCase.java index a434fbd9949..16e27303fa8 100644 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/LiteralBoostSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/LiteralBoostSearcherTestCase.java @@ -10,11 +10,11 @@ import com.yahoo.search.Query; import com.yahoo.prelude.querytransform.LiteralBoostSearcher; import com.yahoo.search.searchchain.Execution; import com.yahoo.search.test.QueryTestCase; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.util.*; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; /** * Tests the complete field match query transformer @@ -24,55 +24,55 @@ import static org.junit.Assert.assertEquals; public class LiteralBoostSearcherTestCase { @Test - public void testSimpleQueryWithBoost() { + void testSimpleQueryWithBoost() { assertEquals("RANK (WEAKAND(100) abc) default_literal:abc", - transformQuery("?query=abc&source=cluster1&restrict=type1")); + transformQuery("?query=abc&source=cluster1&restrict=type1")); } @Test - public void testSimpleQueryNoBoost() { + void testSimpleQueryNoBoost() { assertEquals("WEAKAND(100) abc", transformQuery("?query=abc&source=cluster1&restrict=type2")); } @Test - public void testQueryWithExplicitIndex() { + void testQueryWithExplicitIndex() { assertEquals("RANK (WEAKAND(100) absolute:abc) absolute_literal:abc", transformQuery("?query=absolute:abc&source=cluster1&restrict=type1")); } @Test - public void testQueryWithExplicitIndexNoBoost() { + void testQueryWithExplicitIndexNoBoost() { assertEquals("WEAKAND(100) absolute:abc", transformQuery("?query=absolute:abc&source=cluster1&restrict=type2")); } @Test - public void testQueryWithNegativeBranch() { - assertEquals("RANK (+(AND abc def) -ghi) "+ - "default_literal:abc default_literal:def", - transformQuery("?query=abc and def andnot ghi&type=adv&source=cluster1&restrict=type1")); + void testQueryWithNegativeBranch() { + assertEquals("RANK (+(AND abc def) -ghi) " + + "default_literal:abc default_literal:def", + transformQuery("?query=abc and def andnot ghi&type=adv&source=cluster1&restrict=type1")); } @Test - public void testJumbledQuery() { + void testJumbledQuery() { assertEquals - ("RANK (OR (+(OR abc def) -ghi) jkl) " + - "default_literal:abc default_literal:def default_literal:jkl", - transformQuery("?query=abc or def andnot ghi or jkl&type=adv&source=cluster1&restrict=type1")); + ("RANK (OR (+(OR abc def) -ghi) jkl) " + + "default_literal:abc default_literal:def default_literal:jkl", + transformQuery("?query=abc or def andnot ghi or jkl&type=adv&source=cluster1&restrict=type1")); } @Test - public void testTermindexQuery() { - assertEquals("RANK (+(WEAKAND(100) a b d) -c) default_literal:a "+ - "default_literal:b default_literal:d", - transformQuery("?query=a b -c d&source=cluster1&restrict=type1")); + void testTermindexQuery() { + assertEquals("RANK (+(WEAKAND(100) a b d) -c) default_literal:a " + + "default_literal:b default_literal:d", + transformQuery("?query=a b -c d&source=cluster1&restrict=type1")); } @Test - public void testQueryWithoutBoost() { + void testQueryWithoutBoost() { assertEquals("RANK (AND nonexistant a nonexistant b) default_literal:nonexistant default_literal:a default_literal:nonexistant default_literal:b", - transformQuery("?query=nonexistant:a nonexistant:b&source=cluster1&restrict=type1&type=all")); + transformQuery("?query=nonexistant:a nonexistant:b&source=cluster1&restrict=type1&type=all")); } private String transformQuery(String rawQuery) { diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NoRankingSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NoRankingSearcherTestCase.java index 107a82f3186..16d6bd40178 100644 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NoRankingSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NoRankingSearcherTestCase.java @@ -5,41 +5,41 @@ import com.yahoo.search.Query; import com.yahoo.prelude.querytransform.NoRankingSearcher; import com.yahoo.search.Searcher; import com.yahoo.search.searchchain.Execution; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; public class NoRankingSearcherTestCase { Searcher s = new NoRankingSearcher(); @Test - public void testDoSearch() { + void testDoSearch() { Query q = new Query("?query=a&sorting=%2ba%20-b&ranking=hello"); assertEquals("hello", q.getRanking().getProfile()); new Execution(s, Execution.Context.createContextStub()).search(q); assertEquals("unranked", q.getRanking().getProfile()); - } + } @Test - public void testSortOnRelevanceAscending() { + void testSortOnRelevanceAscending() { Query q = new Query("?query=a&sorting=%2ba%20-b%20-[rank]&ranking=hello"); new Execution(s, Execution.Context.createContextStub()).search(q); assertEquals("hello", q.getRanking().getProfile()); - } + } @Test - public void testSortOnRelevanceDescending() { + void testSortOnRelevanceDescending() { Query q = new Query("?query=a&sorting=%2ba%20-b%20-[rank]&ranking=hello"); new Execution(s, Execution.Context.createContextStub()).search(q); assertEquals("hello", q.getRanking().getProfile()); - } + } @Test - public void testNoSorting() { + void testNoSorting() { Query q = new Query("?query=a"); new Execution(s, Execution.Context.createContextStub()).search(q); assertEquals("default", q.getRanking().getProfile()); - } + } } diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NonPhrasingSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NonPhrasingSearcherTestCase.java index 462e57a2b37..5a090a51415 100644 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NonPhrasingSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NonPhrasingSearcherTestCase.java @@ -7,9 +7,9 @@ import com.yahoo.prelude.query.WordItem; import com.yahoo.prelude.querytransform.NonPhrasingSearcher; import com.yahoo.search.Searcher; import com.yahoo.search.searchchain.Execution; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; /** * Tests non-phrasing @@ -21,58 +21,58 @@ public class NonPhrasingSearcherTestCase { private Searcher searcher; @Test - public void testSingleWordNonPhrasing() { - searcher= - new NonPhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + void testSingleWordNonPhrasing() { + searcher = + new NonPhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); - Query query=new Query("?query=void+aword+kanoo"); + Query query = new Query("?query=void+aword+kanoo"); new Execution(searcher, Execution.Context.createContextStub()).search(query); assertEquals("WEAKAND(100) void kanoo", query.getModel().getQueryTree().getRoot().toString()); } @Test - public void testMultipleWordNonPhrasing() { - searcher= - new NonPhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + void testMultipleWordNonPhrasing() { + searcher = + new NonPhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); - Query query=new Query("?query=void+tudor+vidor+kanoo"); + Query query = new Query("?query=void+tudor+vidor+kanoo"); new Execution(searcher, Execution.Context.createContextStub()).search(query); - CompositeItem item=(CompositeItem) query.getModel().getQueryTree().getRoot(); - assertEquals(2,item.getItemCount()); - assertEquals("void",((WordItem)item.getItem(0)).getWord()); - assertEquals("kanoo",((WordItem)item.getItem(1)).getWord()); + CompositeItem item = (CompositeItem) query.getModel().getQueryTree().getRoot(); + assertEquals(2, item.getItemCount()); + assertEquals("void", ((WordItem) item.getItem(0)).getWord()); + assertEquals("kanoo", ((WordItem) item.getItem(1)).getWord()); } @Test - public void testNoNonPhrasingIfNoOtherPhrases() { - searcher= - new NonPhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + void testNoNonPhrasingIfNoOtherPhrases() { + searcher = + new NonPhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); - Query query=new Query("?query=tudor+vidor"); + Query query = new Query("?query=tudor+vidor"); new Execution(searcher, Execution.Context.createContextStub()).search(query); - CompositeItem item=(CompositeItem) query.getModel().getQueryTree().getRoot(); - assertEquals(2,item.getItemCount()); - assertEquals("tudor",((WordItem)item.getItem(0)).getWord()); - assertEquals("vidor",((WordItem)item.getItem(1)).getWord()); + CompositeItem item = (CompositeItem) query.getModel().getQueryTree().getRoot(); + assertEquals(2, item.getItemCount()); + assertEquals("tudor", ((WordItem) item.getItem(0)).getWord()); + assertEquals("vidor", ((WordItem) item.getItem(1)).getWord()); } @Test - public void testNoNonPhrasingIfSuggestOnly() { - searcher= - new NonPhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + void testNoNonPhrasingIfSuggestOnly() { + searcher = + new NonPhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); - Query query=new Query("?query=void+tudor+vidor+kanoo&suggestonly=true"); + Query query = new Query("?query=void+tudor+vidor+kanoo&suggestonly=true"); new Execution(searcher, Execution.Context.createContextStub()).search(query); - CompositeItem item=(CompositeItem) query.getModel().getQueryTree().getRoot(); - assertEquals(4,item.getItemCount()); - assertEquals("void",((WordItem)item.getItem(0)).getWord()); - assertEquals("tudor",((WordItem)item.getItem(1)).getWord()); - assertEquals("vidor",((WordItem)item.getItem(2)).getWord()); - assertEquals("kanoo",((WordItem)item.getItem(3)).getWord()); + CompositeItem item = (CompositeItem) query.getModel().getQueryTree().getRoot(); + assertEquals(4, item.getItemCount()); + assertEquals("void", ((WordItem) item.getItem(0)).getWord()); + assertEquals("tudor", ((WordItem) item.getItem(1)).getWord()); + assertEquals("vidor", ((WordItem) item.getItem(2)).getWord()); + assertEquals("kanoo", ((WordItem) item.getItem(3)).getWord()); } } diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NormalizingSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NormalizingSearcherTestCase.java index 7ab50118c6d..239f4500297 100644 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NormalizingSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/NormalizingSearcherTestCase.java @@ -1,8 +1,8 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.prelude.querytransform.test; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; import com.google.common.collect.ImmutableList; import com.yahoo.language.Linguistics; @@ -19,7 +19,7 @@ import com.yahoo.prelude.IndexModel; import com.yahoo.prelude.querytransform.NormalizingSearcher; import com.yahoo.search.searchchain.Execution; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; @@ -38,35 +38,35 @@ public class NormalizingSearcherTestCase { private static final Linguistics linguistics = new SimpleLinguistics(); @Test - public void testNoNormalizingNecssary() { + void testNoNormalizingNecssary() { Query query = new Query("/search?query=bilen&search=cluster1&restrict=type1"); createExecution().search(query); assertEquals("WEAKAND(100) bilen", query.getModel().getQueryTree().getRoot().toString()); } @Test - public void testAttributeQuery() { + void testAttributeQuery() { Query query = new Query("/search?query=attribute:" + enc("b\u00e9yonc\u00e8 b\u00e9yonc\u00e8") + "&search=cluster1&restrict=type1"); createExecution().search(query); assertEquals("WEAKAND(100) attribute:b\u00e9yonc\u00e8 beyonce", query.getModel().getQueryTree().getRoot().toString()); } @Test - public void testOneTermNormalizing() { + void testOneTermNormalizing() { Query query = new Query("/search?query=b\u00e9yonc\u00e8&search=cluster1&restrict=type1"); createExecution().search(query); assertEquals("WEAKAND(100) beyonce", query.getModel().getQueryTree().getRoot().toString()); } @Test - public void testOneTermNoNormalizingDifferentSearchDef() { + void testOneTermNoNormalizingDifferentSearchDef() { Query query = new Query("/search?query=b\u00e9yonc\u00e8&search=cluster1&restrict=type2"); createExecution().search(query); assertEquals("WEAKAND(100) béyoncè", query.getModel().getQueryTree().getRoot().toString()); } @Test - public void testTwoTermQuery() throws UnsupportedEncodingException { + void testTwoTermQuery() throws UnsupportedEncodingException { Query query = new Query("/search?query=" + enc("b\u00e9yonc\u00e8 beyonc\u00e9") + "&search=cluster1&restrict=type1"); createExecution().search(query); assertEquals("WEAKAND(100) beyonce beyonce", query.getModel().getQueryTree().getRoot().toString()); @@ -82,7 +82,7 @@ public class NormalizingSearcherTestCase { } @Test - public void testPhraseQuery() { + void testPhraseQuery() { Query query = new Query("/search?query=" + enc("\"b\u00e9yonc\u00e8 beyonc\u00e9\"") + "&search=cluster1&restrict=type1"); query.getTrace().setLevel(2); createExecution().search(query); @@ -90,7 +90,7 @@ public class NormalizingSearcherTestCase { } @Test - public void testLiteralBoost() { + void testLiteralBoost() { Query query = new Query("/search?query=nop&search=cluster1&restrict=type1"); List<WordAlternativesItem.Alternative> terms = new ArrayList<>(); Substring origin = new Substring(0, 5, "h\u00F4tels"); @@ -107,12 +107,12 @@ public class NormalizingSearcherTestCase { assertEquals(.7d * .7d, a.exactness, 1e-15); } } - assertTrue("Did not find the expected normalized form \"hotel\".", foundHotel); + assertTrue(foundHotel, "Did not find the expected normalized form \"hotel\"."); } @Test - public void testPhraseSegmentNormalization() { + void testPhraseSegmentNormalization() { Query query = new Query("/search?query=&search=cluster1&restrict=type1"); PhraseSegmentItem phraseSegment = new PhraseSegmentItem("default", false, false); phraseSegment.addItem(new WordItem("net")); diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/PhraseMatcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/PhraseMatcherTestCase.java index 623c480796c..da7b29272a2 100644 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/PhraseMatcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/PhraseMatcherTestCase.java @@ -5,14 +5,11 @@ import com.yahoo.prelude.query.AndItem; import com.yahoo.prelude.query.IntItem; import com.yahoo.prelude.query.WordItem; import com.yahoo.prelude.querytransform.PhraseMatcher; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.util.List; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; +import static org.junit.jupiter.api.Assertions.*; /** * @author bratseth @@ -20,118 +17,118 @@ import static org.junit.Assert.assertNull; public class PhraseMatcherTestCase { @Test - public void testSingleItemMatching() { - PhraseMatcher matcher=new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + void testSingleItemMatching() { + PhraseMatcher matcher = new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); matcher.setMatchSingleItems(true); - List<?> matches=matcher.matchPhrases(new WordItem("aword")); + List<?> matches = matcher.matchPhrases(new WordItem("aword")); assertNotNull(matches); - assertEquals(1,matches.size()); - PhraseMatcher.Phrase match=(PhraseMatcher.Phrase)matches.get(0); - assertEquals(1,match.getLength()); - assertEquals("",match.getData()); - assertEquals(null,match.getOwner()); - assertEquals(0,match.getStartIndex()); - PhraseMatcher.Phrase.MatchIterator i=match.itemIterator(); - assertEquals(new WordItem("aword"),i.next()); + assertEquals(1, matches.size()); + PhraseMatcher.Phrase match = (PhraseMatcher.Phrase) matches.get(0); + assertEquals(1, match.getLength()); + assertEquals("", match.getData()); + assertNull(match.getOwner()); + assertEquals(0, match.getStartIndex()); + PhraseMatcher.Phrase.MatchIterator i = match.itemIterator(); + assertEquals(new WordItem("aword"), i.next()); assertNull(i.getReplace()); assertFalse(i.hasNext()); } @Test - public void testSingleItemMatchingCaseInsensitive() { - PhraseMatcher matcher=new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + void testSingleItemMatchingCaseInsensitive() { + PhraseMatcher matcher = new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); matcher.setMatchSingleItems(true); final String mixedCase = "aWoRD"; - List<?> matches=matcher.matchPhrases(new WordItem(mixedCase)); + List<?> matches = matcher.matchPhrases(new WordItem(mixedCase)); assertNotNull(matches); - assertEquals(1,matches.size()); - PhraseMatcher.Phrase match=(PhraseMatcher.Phrase)matches.get(0); - assertEquals(1,match.getLength()); - assertEquals("",match.getData()); - assertEquals(null,match.getOwner()); - assertEquals(0,match.getStartIndex()); - PhraseMatcher.Phrase.MatchIterator i=match.itemIterator(); - assertEquals(new WordItem(mixedCase),i.next()); + assertEquals(1, matches.size()); + PhraseMatcher.Phrase match = (PhraseMatcher.Phrase) matches.get(0); + assertEquals(1, match.getLength()); + assertEquals("", match.getData()); + assertNull(match.getOwner()); + assertEquals(0, match.getStartIndex()); + PhraseMatcher.Phrase.MatchIterator i = match.itemIterator(); + assertEquals(new WordItem(mixedCase), i.next()); assertNull(i.getReplace()); assertFalse(i.hasNext()); } @Test - public void testSingleItemMatchingWithPluralIgnore() { - PhraseMatcher matcher=new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa",true); + void testSingleItemMatchingWithPluralIgnore() { + PhraseMatcher matcher = new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa", true); matcher.setMatchSingleItems(true); - List<?> matches=matcher.matchPhrases(new WordItem("awords")); + List<?> matches = matcher.matchPhrases(new WordItem("awords")); assertNotNull(matches); - assertEquals(1,matches.size()); - PhraseMatcher.Phrase match=(PhraseMatcher.Phrase)matches.get(0); - assertEquals(1,match.getLength()); - assertEquals("",match.getData()); - assertEquals(null,match.getOwner()); - assertEquals(0,match.getStartIndex()); - PhraseMatcher.Phrase.MatchIterator i=match.itemIterator(); - assertEquals(new WordItem("awords"),i.next()); - assertEquals("aword",i.getReplace()); + assertEquals(1, matches.size()); + PhraseMatcher.Phrase match = (PhraseMatcher.Phrase) matches.get(0); + assertEquals(1, match.getLength()); + assertEquals("", match.getData()); + assertNull(match.getOwner()); + assertEquals(0, match.getStartIndex()); + PhraseMatcher.Phrase.MatchIterator i = match.itemIterator(); + assertEquals(new WordItem("awords"), i.next()); + assertEquals("aword", i.getReplace()); assertFalse(i.hasNext()); } @Test - public void testSingleItemMatchingCaseInsensitiveWithPluralIgnore() { - PhraseMatcher matcher=new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa",true); + void testSingleItemMatchingCaseInsensitiveWithPluralIgnore() { + PhraseMatcher matcher = new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa", true); matcher.setMatchSingleItems(true); final String mixedCase = "aWoRDS"; - List<?> matches=matcher.matchPhrases(new WordItem(mixedCase)); + List<?> matches = matcher.matchPhrases(new WordItem(mixedCase)); assertNotNull(matches); - assertEquals(1,matches.size()); - PhraseMatcher.Phrase match=(PhraseMatcher.Phrase)matches.get(0); - assertEquals(1,match.getLength()); - assertEquals("",match.getData()); - assertEquals(null,match.getOwner()); - assertEquals(0,match.getStartIndex()); - PhraseMatcher.Phrase.MatchIterator i=match.itemIterator(); - assertEquals(new WordItem(mixedCase),i.next()); - assertEquals("aword",i.getReplace()); + assertEquals(1, matches.size()); + PhraseMatcher.Phrase match = (PhraseMatcher.Phrase) matches.get(0); + assertEquals(1, match.getLength()); + assertEquals("", match.getData()); + assertNull(match.getOwner()); + assertEquals(0, match.getStartIndex()); + PhraseMatcher.Phrase.MatchIterator i = match.itemIterator(); + assertEquals(new WordItem(mixedCase), i.next()); + assertEquals("aword", i.getReplace()); assertFalse(i.hasNext()); } @Test - public void testPhraseMatching() { - PhraseMatcher matcher=new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa",true); - AndItem and=new AndItem(); + void testPhraseMatching() { + PhraseMatcher matcher = new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa", true); + AndItem and = new AndItem(); and.addItem(new WordItem("noisebefore")); and.addItem(new WordItem("this")); and.addItem(new WordItem("is")); and.addItem(new WordItem("a")); and.addItem(new WordItem("test")); and.addItem(new WordItem("noiseafter")); - List<?> matches=matcher.matchPhrases(and); + List<?> matches = matcher.matchPhrases(and); assertNotNull(matches); - assertEquals(1,matches.size()); - PhraseMatcher.Phrase match=(PhraseMatcher.Phrase)matches.get(0); - assertEquals(4,match.getLength()); - assertEquals("",match.getData()); - assertEquals(and,match.getOwner()); - assertEquals(1,match.getStartIndex()); - PhraseMatcher.Phrase.MatchIterator i=match.itemIterator(); - assertEquals(new WordItem("this"),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem("is"),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem("a"),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem("test"),i.next()); - assertEquals(null,i.getReplace()); + assertEquals(1, matches.size()); + PhraseMatcher.Phrase match = (PhraseMatcher.Phrase) matches.get(0); + assertEquals(4, match.getLength()); + assertEquals("", match.getData()); + assertEquals(and, match.getOwner()); + assertEquals(1, match.getStartIndex()); + PhraseMatcher.Phrase.MatchIterator i = match.itemIterator(); + assertEquals(new WordItem("this"), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem("is"), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem("a"), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem("test"), i.next()); + assertNull(i.getReplace()); assertFalse(i.hasNext()); } @Test - public void testPhraseMatchingCaseInsensitive() { - PhraseMatcher matcher=new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa",true); - AndItem and=new AndItem(); + void testPhraseMatchingCaseInsensitive() { + PhraseMatcher matcher = new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa", true); + AndItem and = new AndItem(); and.addItem(new WordItem("noisebefore")); final String firstWord = "thIs"; and.addItem(new WordItem(firstWord)); @@ -142,93 +139,93 @@ public class PhraseMatcherTestCase { final String fourthWord = "tEst"; and.addItem(new WordItem(fourthWord)); and.addItem(new WordItem("noiseafter")); - List<?> matches=matcher.matchPhrases(and); + List<?> matches = matcher.matchPhrases(and); assertNotNull(matches); - assertEquals(1,matches.size()); - PhraseMatcher.Phrase match=(PhraseMatcher.Phrase)matches.get(0); - assertEquals(4,match.getLength()); - assertEquals("",match.getData()); - assertEquals(and,match.getOwner()); - assertEquals(1,match.getStartIndex()); - PhraseMatcher.Phrase.MatchIterator i=match.itemIterator(); - assertEquals(new WordItem(firstWord),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem(secondWord),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem(thirdWord),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem(fourthWord),i.next()); - assertEquals(null,i.getReplace()); + assertEquals(1, matches.size()); + PhraseMatcher.Phrase match = (PhraseMatcher.Phrase) matches.get(0); + assertEquals(4, match.getLength()); + assertEquals("", match.getData()); + assertEquals(and, match.getOwner()); + assertEquals(1, match.getStartIndex()); + PhraseMatcher.Phrase.MatchIterator i = match.itemIterator(); + assertEquals(new WordItem(firstWord), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem(secondWord), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem(thirdWord), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem(fourthWord), i.next()); + assertNull(i.getReplace()); assertFalse(i.hasNext()); } @Test - public void testPhraseMatchingWithNumber() { - PhraseMatcher matcher=new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa",true); - AndItem and=new AndItem(); + void testPhraseMatchingWithNumber() { + PhraseMatcher matcher = new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa", true); + AndItem and = new AndItem(); and.addItem(new WordItem("noisebefore")); and.addItem(new WordItem("this")); and.addItem(new WordItem("is")); and.addItem(new IntItem("3")); and.addItem(new WordItem("tests")); and.addItem(new WordItem("noiseafter")); - List<?> matches=matcher.matchPhrases(and); + List<?> matches = matcher.matchPhrases(and); assertNotNull(matches); - assertEquals(1,matches.size()); - PhraseMatcher.Phrase match=(PhraseMatcher.Phrase)matches.get(0); - assertEquals(4,match.getLength()); - assertEquals("",match.getData()); - assertEquals(and,match.getOwner()); - assertEquals(1,match.getStartIndex()); - PhraseMatcher.Phrase.MatchIterator i=match.itemIterator(); - assertEquals(new WordItem("this"),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem("is"),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new IntItem("3"),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem("tests"),i.next()); - assertEquals(null,i.getReplace()); + assertEquals(1, matches.size()); + PhraseMatcher.Phrase match = (PhraseMatcher.Phrase) matches.get(0); + assertEquals(4, match.getLength()); + assertEquals("", match.getData()); + assertEquals(and, match.getOwner()); + assertEquals(1, match.getStartIndex()); + PhraseMatcher.Phrase.MatchIterator i = match.itemIterator(); + assertEquals(new WordItem("this"), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem("is"), i.next()); + assertNull(i.getReplace()); + assertEquals(new IntItem("3"), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem("tests"), i.next()); + assertNull(i.getReplace()); assertFalse(i.hasNext()); } @Test - public void testPhraseMatchingWithPluralIgnore() { - PhraseMatcher matcher=new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa",true); - AndItem and=new AndItem(); + void testPhraseMatchingWithPluralIgnore() { + PhraseMatcher matcher = new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa", true); + AndItem and = new AndItem(); and.addItem(new WordItem("noisebefore")); and.addItem(new WordItem("thi")); and.addItem(new WordItem("is")); and.addItem(new WordItem("a")); and.addItem(new WordItem("tests")); and.addItem(new WordItem("noiseafter")); - List<?> matches=matcher.matchPhrases(and); + List<?> matches = matcher.matchPhrases(and); assertNotNull(matches); - assertEquals(1,matches.size()); - PhraseMatcher.Phrase match=(PhraseMatcher.Phrase)matches.get(0); - assertEquals(4,match.getLength()); - assertEquals("",match.getData()); - assertEquals(and,match.getOwner()); - assertEquals(1,match.getStartIndex()); - PhraseMatcher.Phrase.MatchIterator i=match.itemIterator(); - assertEquals(new WordItem("thi"),i.next()); - assertEquals("this",i.getReplace()); - assertEquals(new WordItem("is"),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem("a"),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem("tests"),i.next()); - assertEquals("test",i.getReplace()); + assertEquals(1, matches.size()); + PhraseMatcher.Phrase match = (PhraseMatcher.Phrase) matches.get(0); + assertEquals(4, match.getLength()); + assertEquals("", match.getData()); + assertEquals(and, match.getOwner()); + assertEquals(1, match.getStartIndex()); + PhraseMatcher.Phrase.MatchIterator i = match.itemIterator(); + assertEquals(new WordItem("thi"), i.next()); + assertEquals("this", i.getReplace()); + assertEquals(new WordItem("is"), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem("a"), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem("tests"), i.next()); + assertEquals("test", i.getReplace()); assertFalse(i.hasNext()); } @Test - public void testPhraseMatchingCaseInsensitiveWithPluralIgnore() { - PhraseMatcher matcher=new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa",true); - AndItem and=new AndItem(); + void testPhraseMatchingCaseInsensitiveWithPluralIgnore() { + PhraseMatcher matcher = new PhraseMatcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa", true); + AndItem and = new AndItem(); and.addItem(new WordItem("noisebefore")); final String firstWord = "thI"; and.addItem(new WordItem(firstWord)); @@ -239,24 +236,24 @@ public class PhraseMatcherTestCase { final String fourthWord = "tEsts"; and.addItem(new WordItem(fourthWord)); and.addItem(new WordItem("noiseafter")); - List<?> matches=matcher.matchPhrases(and); + List<?> matches = matcher.matchPhrases(and); assertNotNull(matches); - assertEquals(1,matches.size()); - PhraseMatcher.Phrase match=(PhraseMatcher.Phrase)matches.get(0); - assertEquals(4,match.getLength()); - assertEquals("",match.getData()); - assertEquals(and,match.getOwner()); - assertEquals(1,match.getStartIndex()); - PhraseMatcher.Phrase.MatchIterator i=match.itemIterator(); - assertEquals(new WordItem(firstWord),i.next()); - assertEquals("this",i.getReplace()); - assertEquals(new WordItem(secondWord),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem(thirdWord),i.next()); - assertEquals(null,i.getReplace()); - assertEquals(new WordItem(fourthWord),i.next()); - assertEquals("test",i.getReplace()); + assertEquals(1, matches.size()); + PhraseMatcher.Phrase match = (PhraseMatcher.Phrase) matches.get(0); + assertEquals(4, match.getLength()); + assertEquals("", match.getData()); + assertEquals(and, match.getOwner()); + assertEquals(1, match.getStartIndex()); + PhraseMatcher.Phrase.MatchIterator i = match.itemIterator(); + assertEquals(new WordItem(firstWord), i.next()); + assertEquals("this", i.getReplace()); + assertEquals(new WordItem(secondWord), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem(thirdWord), i.next()); + assertNull(i.getReplace()); + assertEquals(new WordItem(fourthWord), i.next()); + assertEquals("test", i.getReplace()); assertFalse(i.hasNext()); } diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/PhrasingSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/PhrasingSearcherTestCase.java index 8f2ae910d1b..9eca9a5fed8 100644 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/PhrasingSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/PhrasingSearcherTestCase.java @@ -11,10 +11,10 @@ import com.yahoo.prelude.query.WordItem; import com.yahoo.prelude.querytransform.PhrasingSearcher; import com.yahoo.search.Searcher; import com.yahoo.search.searchchain.Execution; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; /** * Tests phrasing stuff @@ -25,104 +25,104 @@ import static org.junit.Assert.assertTrue; public class PhrasingSearcherTestCase { @Test - public void testTotalPhrasing() { - Searcher searcher= - new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); - - Query query=new Query(); - AndItem andItem=new AndItem(); - andItem.addItem(new WordItem("tudor","someindex")); - andItem.addItem(new WordItem("vidor","someindex")); + void testTotalPhrasing() { + Searcher searcher = + new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + + Query query = new Query(); + AndItem andItem = new AndItem(); + andItem.addItem(new WordItem("tudor", "someindex")); + andItem.addItem(new WordItem("vidor", "someindex")); query.getModel().getQueryTree().setRoot(andItem); new Execution(searcher, Execution.Context.createContextStub()).search(query); - Item item=((CompositeItem) query.getModel().getQueryTree().getRoot()).getItem(0); + Item item = ((CompositeItem) query.getModel().getQueryTree().getRoot()).getItem(0); assertTrue(item instanceof PhraseItem); - PhraseItem phrase=(PhraseItem)item; - assertEquals(2,phrase.getItemCount()); - assertEquals("tudor",phrase.getWordItem(0).getWord()); - assertEquals("vidor",phrase.getWordItem(1).getWord()); - assertEquals("someindex",phrase.getIndexName()); + PhraseItem phrase = (PhraseItem) item; + assertEquals(2, phrase.getItemCount()); + assertEquals("tudor", phrase.getWordItem(0).getWord()); + assertEquals("vidor", phrase.getWordItem(1).getWord()); + assertEquals("someindex", phrase.getIndexName()); } @Test - public void testPartialPhrasing() { - Searcher searcher= - new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + void testPartialPhrasing() { + Searcher searcher = + new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); - Query query=new Query("?query=void%20tudor%20vidor%20kanoo"); + Query query = new Query("?query=void%20tudor%20vidor%20kanoo"); new Execution(searcher, Execution.Context.createContextStub()).search(query); - CompositeItem item=(CompositeItem) query.getModel().getQueryTree().getRoot(); - assertEquals("void",((WordItem)item.getItem(0)).getWord()); - assertEquals("kanoo",((WordItem)item.getItem(2)).getWord()); - - PhraseItem phrase=(PhraseItem)item.getItem(1); - assertEquals(2,phrase.getItemCount()); - assertEquals("tudor",phrase.getWordItem(0).getWord()); - assertEquals("vidor",phrase.getWordItem(1).getWord()); + CompositeItem item = (CompositeItem) query.getModel().getQueryTree().getRoot(); + assertEquals("void", ((WordItem) item.getItem(0)).getWord()); + assertEquals("kanoo", ((WordItem) item.getItem(2)).getWord()); + + PhraseItem phrase = (PhraseItem) item.getItem(1); + assertEquals(2, phrase.getItemCount()); + assertEquals("tudor", phrase.getWordItem(0).getWord()); + assertEquals("vidor", phrase.getWordItem(1).getWord()); } @Test - public void testPartialPhrasingSuggestOnly() { - Searcher searcher= - new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + void testPartialPhrasingSuggestOnly() { + Searcher searcher = + new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); - Query query=new Query("?query=void%20tudor%20vidor%20kanoo&suggestonly=true"); + Query query = new Query("?query=void%20tudor%20vidor%20kanoo&suggestonly=true"); new Execution(searcher, Execution.Context.createContextStub()).search(query); - CompositeItem item=(CompositeItem) query.getModel().getQueryTree().getRoot(); - assertEquals("void", ((WordItem)item.getItem(0)).getWord()); - assertEquals("tudor",((WordItem)item.getItem(1)).getWord()); - assertEquals("vidor",((WordItem)item.getItem(2)).getWord()); - assertEquals("kanoo",((WordItem)item.getItem(3)).getWord()); + CompositeItem item = (CompositeItem) query.getModel().getQueryTree().getRoot(); + assertEquals("void", ((WordItem) item.getItem(0)).getWord()); + assertEquals("tudor", ((WordItem) item.getItem(1)).getWord()); + assertEquals("vidor", ((WordItem) item.getItem(2)).getWord()); + assertEquals("kanoo", ((WordItem) item.getItem(3)).getWord()); } @Test - public void testNoPhrasingIfDifferentIndices() { - Searcher searcher= - new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); - - Query query=new Query(); - AndItem andItem=new AndItem(); - andItem.addItem(new WordItem("tudor","someindex")); - andItem.addItem(new WordItem("vidor","anotherindex")); + void testNoPhrasingIfDifferentIndices() { + Searcher searcher = + new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + + Query query = new Query(); + AndItem andItem = new AndItem(); + andItem.addItem(new WordItem("tudor", "someindex")); + andItem.addItem(new WordItem("vidor", "anotherindex")); query.getModel().getQueryTree().setRoot(andItem); new Execution(searcher, Execution.Context.createContextStub()).search(query); - CompositeItem item=(CompositeItem) query.getModel().getQueryTree().getRoot(); + CompositeItem item = (CompositeItem) query.getModel().getQueryTree().getRoot(); assertTrue(item.getItem(0) instanceof WordItem); - WordItem word=(WordItem)item.getItem(0); - assertEquals("tudor",word.getWord()); + WordItem word = (WordItem) item.getItem(0); + assertEquals("tudor", word.getWord()); assertTrue(item.getItem(1) instanceof WordItem); - word=(WordItem)item.getItem(1); - assertEquals("vidor",word.getWord()); + word = (WordItem) item.getItem(1); + assertEquals("vidor", word.getWord()); } @Test - public void testMultiplePhrases() { - Searcher searcher= - new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); - - Query query=new Query(); - AndItem andItem=new AndItem(); - andItem.addItem(new WordItem("tudor","someindex")); - andItem.addItem(new WordItem("tudor","someindex")); - andItem.addItem(new WordItem("vidor","someindex")); - andItem.addItem(new WordItem("vidor","someindex")); - - OrItem orItem=new OrItem(); + void testMultiplePhrases() { + Searcher searcher = + new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + + Query query = new Query(); + AndItem andItem = new AndItem(); + andItem.addItem(new WordItem("tudor", "someindex")); + andItem.addItem(new WordItem("tudor", "someindex")); + andItem.addItem(new WordItem("vidor", "someindex")); + andItem.addItem(new WordItem("vidor", "someindex")); + + OrItem orItem = new OrItem(); andItem.addItem(orItem); orItem.addItem(new WordItem("tudor")); - AndItem andItem2=new AndItem(); - andItem2.addItem(new WordItem("this","anotherindex")); - andItem2.addItem(new WordItem("is","anotherindex")); - andItem2.addItem(new WordItem("a","anotherindex")); - andItem2.addItem(new WordItem("test","anotherindex")); - andItem2.addItem(new WordItem("tudor","anotherindex")); - andItem2.addItem(new WordItem("vidor","anotherindex")); + AndItem andItem2 = new AndItem(); + andItem2.addItem(new WordItem("this", "anotherindex")); + andItem2.addItem(new WordItem("is", "anotherindex")); + andItem2.addItem(new WordItem("a", "anotherindex")); + andItem2.addItem(new WordItem("test", "anotherindex")); + andItem2.addItem(new WordItem("tudor", "anotherindex")); + andItem2.addItem(new WordItem("vidor", "anotherindex")); orItem.addItem(andItem2); orItem.addItem(new WordItem("vidor")); @@ -134,12 +134,12 @@ public class PhrasingSearcherTestCase { } @Test - public void testNoDetection() { - Searcher searcher= - new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); + void testNoDetection() { + Searcher searcher = + new PhrasingSearcher("src/test/java/com/yahoo/prelude/querytransform/test/test-fsa.fsa"); - Query query=new Query(); - AndItem andItem=new AndItem(); + Query query = new Query(); + AndItem andItem = new AndItem(); andItem.addItem(new WordItem("no")); andItem.addItem(new WordItem("such")); andItem.addItem(new WordItem("phrase")); @@ -152,11 +152,11 @@ public class PhrasingSearcherTestCase { } @Test - public void testNoFileNoChange() { + void testNoFileNoChange() { Searcher searcher = new PhrasingSearcher(""); - Query query=new Query(); - AndItem andItem=new AndItem(); + Query query = new Query(); + AndItem andItem = new AndItem(); andItem.addItem(new WordItem("no", "anindex")); andItem.addItem(new WordItem("such", "anindex")); andItem.addItem(new WordItem("phrase", "indexo")); diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/QueryRewriteTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/QueryRewriteTestCase.java index b8c5244fb98..16bfd5f315e 100644 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/QueryRewriteTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/QueryRewriteTestCase.java @@ -13,11 +13,9 @@ import com.yahoo.search.Query; import com.yahoo.search.Result; import com.yahoo.search.searchchain.Execution; import com.yahoo.search.test.QueryTestCase; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.*; /** * @author baldersheim @@ -25,7 +23,7 @@ import static org.junit.Assert.assertTrue; public class QueryRewriteTestCase { @Test - public void testOptimizeByRestrict() { + void testOptimizeByRestrict() { Query query = new Query("?query=sddocname:music"); query.getModel().setRestrict("music"); QueryRewrite.optimizeByRestrict(query); @@ -33,7 +31,7 @@ public class QueryRewriteTestCase { } @Test - public void requireThatOptimizeByRestrictSimplifiesORItemsThatHaveFullRecallAndDontImpactRank() { + void requireThatOptimizeByRestrictSimplifiesORItemsThatHaveFullRecallAndDontImpactRank() { assertRewritten("sddocname:foo OR sddocname:bar OR sddocname:baz", "foo", "sddocname:foo"); assertRewritten("sddocname:foo OR sddocname:bar OR sddocname:baz", "bar", "sddocname:bar"); assertRewritten("sddocname:foo OR sddocname:bar OR sddocname:baz", "baz", "sddocname:baz"); @@ -48,16 +46,16 @@ public class QueryRewriteTestCase { } @Test - public void testRestrictRewriteDoesNotRemoveRankContributingTerms() { + void testRestrictRewriteDoesNotRemoveRankContributingTerms() { Query query = query("sddocname:per OR foo OR bar", "per"); assertRewritten(query, "OR sddocname:per foo bar"); - ((OrItem)query.getModel().getQueryTree().getRoot()).getItem(2).setRanked(false); // set 'bar' unranked + ((OrItem) query.getModel().getQueryTree().getRoot()).getItem(2).setRanked(false); // set 'bar' unranked assertRewritten(query, "OR sddocname:per foo"); assertRewritten("sddocname:per OR foo OR (bar AND fuz)", "per", "OR sddocname:per foo (AND bar fuz)"); } @Test - public void testRankContributingTermsAreNotRemovedOnFullRecall() { + void testRankContributingTermsAreNotRemovedOnFullRecall() { Query query = new Query(QueryTestCase.httpEncode("?query=default:term1 OR default:term2 OR default:term3 OR sddocname:per&type=adv&recall=+id:1&restrict=per")); RecallSearcher searcher = new RecallSearcher(); Result result = new Execution(searcher, Execution.Context.createContextStub()).search(query); @@ -67,7 +65,7 @@ public class QueryRewriteTestCase { } @Test - public void requireThatOptimizeByRestrictSimplifiesANDItemsThatHaveZeroRecall() { + void requireThatOptimizeByRestrictSimplifiesANDItemsThatHaveZeroRecall() { assertRewritten("sddocname:foo AND bar AND baz", "cox", "NULL"); assertRewritten("foo AND sddocname:bar AND baz", "cox", "NULL"); assertRewritten("foo AND bar AND sddocname:baz", "cox", "NULL"); @@ -82,7 +80,7 @@ public class QueryRewriteTestCase { } @Test - public void testRestrictRewrite() { + void testRestrictRewrite() { assertRewritten("a AND b", "per", "AND a b"); assertRewritten("a OR b", "per", "OR a b"); assertRewritten("sddocname:per", "per", "sddocname:per"); @@ -94,9 +92,9 @@ public class QueryRewriteTestCase { assertRewritten("sddocname:perder ANDNOT b", "per", "NULL"); assertRewritten("a ANDNOT sddocname:per a b", "per", "NULL"); } - + @Test - public void testRestrictRank() { + void testRestrictRank() { assertRewritten("sddocname:per&filter=abc", "espen", "NULL"); assertRewritten("sddocname:per&filter=abc", "per", "RANK sddocname:per |abc"); assertRewritten("sddocname:per RANK bar", "per", "RANK sddocname:per bar"); @@ -119,7 +117,7 @@ public class QueryRewriteTestCase { } @Test - public void assertAndNotMovedUp() { + void assertAndNotMovedUp() { Query query = new Query(); NotItem not = new NotItem(); not.addPositiveItem(new WordItem("a")); @@ -139,7 +137,7 @@ public class QueryRewriteTestCase { } @Test - public void assertMultipleAndNotIsCollapsed() { + void assertMultipleAndNotIsCollapsed() { Query query = new Query(); NotItem not1 = new NotItem(); not1.addPositiveItem(new WordItem("a")); @@ -165,7 +163,7 @@ public class QueryRewriteTestCase { AndItem a = (AndItem) n.getPositiveItem(); assertEquals(5, a.getItemCount()); assertEquals("na1", n.getItem(1).toString()); - assertEquals("na2",n.getItem(2).toString()); + assertEquals("na2", n.getItem(2).toString()); assertEquals("nb", n.getItem(3).toString()); assertEquals("1", a.getItem(0).toString()); assertEquals("a", a.getItem(1).toString()); diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/RecallSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/RecallSearcherTestCase.java index 409d01b5c46..e2d1555701c 100755 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/RecallSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/RecallSearcherTestCase.java @@ -16,12 +16,9 @@ import com.yahoo.prelude.query.NullItem; import com.yahoo.prelude.query.WordItem; import com.yahoo.prelude.querytransform.RecallSearcher; import com.yahoo.search.searchchain.Execution; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; +import static org.junit.jupiter.api.Assertions.*; /** * @author Simon Thoresen Hult @@ -29,7 +26,7 @@ import static org.junit.Assert.fail; public class RecallSearcherTestCase { @Test - public void testIgnoreEmptyProperty() { + void testIgnoreEmptyProperty() { RecallSearcher searcher = new RecallSearcher(); Query query = new Query(); Result result = new Execution(searcher, Execution.Context.createContextStub()).search(query); @@ -38,7 +35,7 @@ public class RecallSearcherTestCase { } @Test - public void testDenyRankItems() { + void testDenyRankItems() { RecallSearcher searcher = new RecallSearcher(); Query query = new Query("?recall=foo"); Result result = new Execution(searcher, Execution.Context.createContextStub()).search(query); @@ -46,7 +43,7 @@ public class RecallSearcherTestCase { } @Test - public void testParse() { + void testParse() { List<String> empty = new ArrayList<>(); assertQueryTree("?query=foo", Arrays.asList("foo"), empty); assertQueryTree("?recall=%2bfoo", empty, Arrays.asList("foo")); diff --git a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/StemmingSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/StemmingSearcherTestCase.java index 0d7b0caa65b..bcb243b4563 100644 --- a/container-search/src/test/java/com/yahoo/prelude/querytransform/test/StemmingSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/querytransform/test/StemmingSearcherTestCase.java @@ -17,10 +17,10 @@ import com.yahoo.search.config.IndexInfoConfig; import com.yahoo.search.searchchain.Execution; import com.yahoo.search.test.QueryTestCase; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; /** * @author <a href="mailto:mathiasm@yahoo-inc.com">Mathias M. Lidal</a> @@ -32,13 +32,13 @@ public class StemmingSearcherTestCase { "querytransform/test/", null); @Test - public void testStemOnlySomeTerms() { + void testStemOnlySomeTerms() { assertStem("/search?query=Holes in CVS and Subversion nostem:Found", - "WEAKAND(100) hole in cvs and subversion nostem:Found"); + "WEAKAND(100) hole in cvs and subversion nostem:Found"); } @Test - public void testPhraseSegmentTransforms() { + void testPhraseSegmentTransforms() { Query q1 = buildQueryWithSegmentPhrase(); executeStemming(q1); assertEquals("AND a 'd e'", q1.getModel().getQueryTree().getRoot().toString()); @@ -61,65 +61,65 @@ public class StemmingSearcherTestCase { } @Test - public void testPreserveConnectivityToPhrase() { + void testPreserveConnectivityToPhrase() { Query q1 = buildQueryWithSegmentPhrase(); - CompositeItem r = (CompositeItem)q1.getModel().getQueryTree().getRoot(); - WordItem first = (WordItem)r.getItem(0); - PhraseSegmentItem second = (PhraseSegmentItem)r.getItem(1); + CompositeItem r = (CompositeItem) q1.getModel().getQueryTree().getRoot(); + WordItem first = (WordItem) r.getItem(0); + PhraseSegmentItem second = (PhraseSegmentItem) r.getItem(1); first.setConnectivity(second, 1.0d); executeStemming(q1); assertEquals("AND a 'd e'", q1.getModel().getQueryTree().getRoot().toString()); - r = (CompositeItem)q1.getModel().getQueryTree().getRoot(); - first = (WordItem)r.getItem(0); - second = (PhraseSegmentItem)r.getItem(1); + r = (CompositeItem) q1.getModel().getQueryTree().getRoot(); + first = (WordItem) r.getItem(0); + second = (PhraseSegmentItem) r.getItem(1); var origSecond = first.getConnectedItem(); - assertEquals("Connectivity incorrect.", second, first.getConnectedItem()); + assertEquals(second, first.getConnectedItem(), "Connectivity incorrect."); } @Test - public void testDontStemPrefixes() { + void testDontStemPrefixes() { assertStem("/search?query=ist*&language=de", "WEAKAND(100) ist*"); } @Test - public void testStemming() { + void testStemming() { Query query = new Query("/search?query="); executeStemming(query); assertTrue(query.getModel().getQueryTree().getRoot() instanceof NullItem); } @Test - public void testNounStemming() { + void testNounStemming() { assertStem("/search?query=noun:towers noun:tower noun:tow", - "WEAKAND(100) noun:tower noun:tower noun:tow"); + "WEAKAND(100) noun:tower noun:tower noun:tow"); assertStem("/search?query=notnoun:towers notnoun:tower notnoun:tow", - "WEAKAND(100) notnoun:tower notnoun:tower notnoun:tow"); + "WEAKAND(100) notnoun:tower notnoun:tower notnoun:tow"); } @SuppressWarnings("deprecation") @Test - public void testEmptyIndexInfo() { + void testEmptyIndexInfo() { String indexInfoConfigID = "file:src/test/java/com/yahoo/prelude/querytransform/test/emptyindexinfo.cfg"; ConfigGetter<IndexInfoConfig> getter = new ConfigGetter<>(IndexInfoConfig.class); IndexInfoConfig config = getter.getConfig(indexInfoConfigID); - IndexFacts indexFacts = new IndexFacts(new IndexModel(config, (QrSearchersConfig)null)); + IndexFacts indexFacts = new IndexFacts(new IndexModel(config, (QrSearchersConfig) null)); Query q = new Query(QueryTestCase.httpEncode("?query=cars")); new Execution(new Chain<Searcher>(new StemmingSearcher(linguistics)), - Execution.Context.createContextStub(indexFacts, linguistics)).search(q); + Execution.Context.createContextStub(indexFacts, linguistics)).search(q); assertEquals("WEAKAND(100) cars", q.getModel().getQueryTree().getRoot().toString()); } @Test - public void testLiteralBoost() { + void testLiteralBoost() { Query q = new Query(QueryTestCase.httpEncode("/search?language=en&search=three")); WordItem scratch = new WordItem("trees", true); scratch.setStemmed(false); q.getModel().getQueryTree().setRoot(scratch); executeStemming(q); - assertTrue("Expected a set of word alternatives as root.", - q.getModel().getQueryTree().getRoot() instanceof WordAlternativesItem); + assertTrue(q.getModel().getQueryTree().getRoot() instanceof WordAlternativesItem, + "Expected a set of word alternatives as root."); WordAlternativesItem w = (WordAlternativesItem) q.getModel().getQueryTree().getRoot(); boolean foundExpectedBaseForm = false; for (WordAlternativesItem.Alternative a : w.getAlternatives()) { @@ -128,16 +128,16 @@ public class StemmingSearcherTestCase { foundExpectedBaseForm = true; } } - assertTrue("Did not find original word form in query.", foundExpectedBaseForm); + assertTrue(foundExpectedBaseForm, "Did not find original word form in query."); } @Test - public void testMultipleStemming() { + void testMultipleStemming() { Query q = new Query(QueryTestCase.httpEncode("/search?language=en&search=four&query=trees \"nouns girls\" flowers \"a verbs a\" girls&default-index=foobar")); executeStemming(q); - assertEquals("WEAKAND(100) WORD_ALTERNATIVES foobar:[ tree(0.7) trees(1.0) ] "+ - "foobar:\"noun girl\" WORD_ALTERNATIVES foobar:[ flower(0.7) flowers(1.0) ] "+ - "foobar:\"a verb a\" WORD_ALTERNATIVES foobar:[ girl(0.7) girls(1.0) ]", q.getModel().getQueryTree().getRoot().toString()); + assertEquals("WEAKAND(100) WORD_ALTERNATIVES foobar:[ tree(0.7) trees(1.0) ] " + + "foobar:\"noun girl\" WORD_ALTERNATIVES foobar:[ flower(0.7) flowers(1.0) ] " + + "foobar:\"a verb a\" WORD_ALTERNATIVES foobar:[ girl(0.7) girls(1.0) ]", q.getModel().getQueryTree().getRoot().toString()); } private Execution.Context newExecutionContext() { |