diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2019-09-16 22:56:07 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-16 22:56:07 +0200 |
commit | ecb09fabab58ba8336626e07ab73fabf8ded7199 (patch) | |
tree | 3832bee43ce7c2d1df314897dd9071bb15444618 /container-search/src/test/java/com/yahoo/search | |
parent | c5a2086cf32305c6e9dde031e7b460a04f452c0f (diff) |
Revert "Revert "Revert "Use a LeanHit until merging is done." MERGEOK""
Diffstat (limited to 'container-search/src/test/java/com/yahoo/search')
3 files changed, 4 insertions, 122 deletions
diff --git a/container-search/src/test/java/com/yahoo/search/dispatch/LeanHitTest.java b/container-search/src/test/java/com/yahoo/search/dispatch/LeanHitTest.java deleted file mode 100644 index 3478038e427..00000000000 --- a/container-search/src/test/java/com/yahoo/search/dispatch/LeanHitTest.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.yahoo.search.dispatch; - -import org.junit.Test; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -public class LeanHitTest { - byte [] gidA = {'a'}; - byte [] gidB = {'b'}; - byte [] gidC = {'c'}; - private void verifyTransitiveOrdering(LeanHit a, LeanHit b, LeanHit c) { - assertTrue(a.compareTo(b) < 0); - assertTrue(b.compareTo(c) < 0); - assertTrue(a.compareTo(c) < 0); - assertTrue(b.compareTo(a) > 0); - assertTrue(c.compareTo(b) > 0); - assertTrue(c.compareTo(a) > 0); - } - @Test - public void testOrderingByRelevance() { - assertEquals(0, new LeanHit(gidA, 0, 0, 1).compareTo(new LeanHit(gidA, 0, 0, 1))); - verifyTransitiveOrdering(new LeanHit(gidA, 0, 0, 1), - new LeanHit(gidA, 0, 0, 0), - new LeanHit(gidA, 0, 0, -1)); - } - @Test - public void testOrderingByGid() { - assertEquals(0, new LeanHit(gidA, 0, 0, 1).compareTo(new LeanHit(gidA, 0, 0, 1))); - - verifyTransitiveOrdering(new LeanHit(gidA, 0, 0, 1), - new LeanHit(gidB, 0, 0, 1), - new LeanHit(gidC, 0, 0, 1)); - } - @Test - public void testOrderingBySortData() { - assertEquals(0, new LeanHit(gidA, 0, 0, gidA).compareTo(new LeanHit(gidA, 0, 0, gidA))); - verifyTransitiveOrdering(new LeanHit(gidA, 0, 0, gidA), - new LeanHit(gidA, 0, 0, gidB), - new LeanHit(gidA, 0, 0, gidC)); - } -} diff --git a/container-search/src/test/java/com/yahoo/search/dispatch/MockInvoker.java b/container-search/src/test/java/com/yahoo/search/dispatch/MockInvoker.java index 2fe434d6f3f..4b2f63d6b89 100644 --- a/container-search/src/test/java/com/yahoo/search/dispatch/MockInvoker.java +++ b/container-search/src/test/java/com/yahoo/search/dispatch/MockInvoker.java @@ -1,7 +1,6 @@ // Copyright 2019 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.search.dispatch; -import com.yahoo.prelude.fastsearch.FastHit; import com.yahoo.search.Query; import com.yahoo.search.Result; import com.yahoo.search.dispatch.searchcluster.Node; @@ -38,20 +37,13 @@ class MockInvoker extends SearchInvoker { } @Override - protected InvokerResult getSearchResult(Execution execution) throws IOException { - InvokerResult ret = new InvokerResult(query, 10); + protected Result getSearchResult(Execution execution) throws IOException { + Result ret = new Result(query); if (coverage != null) { - ret.getResult().setCoverage(coverage); + ret.setCoverage(coverage); } if (hits != null) { - for (Hit h : hits) { - if (h instanceof FastHit) { - FastHit fh = (FastHit) h; - ret.getLeanHits().add(new LeanHit(fh.getRawGlobalId(), fh.getPartId(), fh.getDistributionKey(), fh.getRelevance().getScore())); - } else { - ret.getResult().hits().add(h); - } - } + ret.hits().addAll(hits); } return ret; } diff --git a/container-search/src/test/java/com/yahoo/search/dispatch/rpc/ProtobufSerializationTest.java b/container-search/src/test/java/com/yahoo/search/dispatch/rpc/ProtobufSerializationTest.java index b736ca1e6df..0b1d0d07e7a 100644 --- a/container-search/src/test/java/com/yahoo/search/dispatch/rpc/ProtobufSerializationTest.java +++ b/container-search/src/test/java/com/yahoo/search/dispatch/rpc/ProtobufSerializationTest.java @@ -2,32 +2,22 @@ package com.yahoo.search.dispatch.rpc; -import ai.vespa.searchlib.searchprotocol.protobuf.SearchProtocol; -import com.google.protobuf.ByteString; import com.yahoo.document.GlobalId; import com.yahoo.document.idstring.IdString; import com.yahoo.prelude.fastsearch.FastHit; import com.yahoo.search.Query; -import com.yahoo.search.dispatch.InvokerResult; -import com.yahoo.search.dispatch.LeanHit; import org.junit.Test; import java.io.IOException; import java.util.Collections; -import java.util.List; import static org.hamcrest.Matchers.equalTo; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertThat; -import static org.junit.Assert.assertTrue; /** * @author ollivir */ public class ProtobufSerializationTest { - static final double DELTA = 0.000000000001; - @Test public void testDocsumSerialization() throws IOException { Query q = new Query("search/?query=test&hits=10&offset=3"); @@ -39,62 +29,4 @@ public class ProtobufSerializationTest { assertThat(bytes.length, equalTo(41)); } - - SearchProtocol.SearchReply createSearchReply(int numHits, boolean useSorting) { - SearchProtocol.SearchReply.Builder reply = SearchProtocol.SearchReply.newBuilder(); - reply.setTotalHitCount(7); - - for (int i = 0; i < numHits; i++) { - SearchProtocol.Hit.Builder hit = SearchProtocol.Hit.newBuilder(); - byte [] gid = {'a','a','a','a','a','a','a','a','a','a','a', (byte)i}; - hit.setGlobalId(ByteString.copyFrom(gid)); - if (useSorting) { - gid[0] = 'b'; - hit.setSortData(ByteString.copyFrom(gid)); - } else { - hit.setRelevance(numHits - i); - } - reply.addHits(hit); - } - return reply.build(); - } - @Test - public void testSearhReplyDecodingWithRelevance() { - Query q = new Query("search/?query=test"); - InvokerResult result = ProtobufSerialization.convertToResult(q, createSearchReply(5, false), null, 1, 2); - assertEquals(result.getResult().getTotalHitCount(), 7); - List<LeanHit> hits = result.getLeanHits(); - assertEquals(5, hits.size()); - double expectedRelevance = 5; - int hitNum = 0; - for (LeanHit hit : hits) { - assertEquals('a', hit.getGid()[0]); - assertEquals(hitNum, hit.getGid()[11]); - assertEquals(expectedRelevance--, hit.getRelevance(), DELTA); - assertEquals(1, hit.getPartId()); - assertEquals(2, hit.getDistributionKey()); - assertFalse(hit.hasSortData()); - hitNum++; - } - } - @Test - public void testSearhReplyDecodingWithSortData() { - Query q = new Query("search/?query=test"); - InvokerResult result = ProtobufSerialization.convertToResult(q, createSearchReply(5, true), null, 1, 2); - assertEquals(result.getResult().getTotalHitCount(), 7); - List<LeanHit> hits = result.getLeanHits(); - assertEquals(5, hits.size()); - int hitNum = 0; - for (LeanHit hit : hits) { - assertEquals('a', hit.getGid()[0]); - assertEquals(hitNum, hit.getGid()[11]); - assertEquals(Double.NEGATIVE_INFINITY, hit.getRelevance(), DELTA); - assertEquals(1, hit.getPartId()); - assertEquals(2, hit.getDistributionKey()); - assertTrue(hit.hasSortData()); - assertEquals('b', hit.getSortData()[0]); - assertEquals(hitNum, hit.getSortData()[11]); - hitNum++; - } - } } |