aboutsummaryrefslogtreecommitdiffstats
path: root/container-search/src/test/java/com/yahoo/search
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2019-09-16 22:56:07 +0200
committerGitHub <noreply@github.com>2019-09-16 22:56:07 +0200
commitecb09fabab58ba8336626e07ab73fabf8ded7199 (patch)
tree3832bee43ce7c2d1df314897dd9071bb15444618 /container-search/src/test/java/com/yahoo/search
parentc5a2086cf32305c6e9dde031e7b460a04f452c0f (diff)
Revert "Revert "Revert "Use a LeanHit until merging is done." MERGEOK""
Diffstat (limited to 'container-search/src/test/java/com/yahoo/search')
-rw-r--r--container-search/src/test/java/com/yahoo/search/dispatch/LeanHitTest.java42
-rw-r--r--container-search/src/test/java/com/yahoo/search/dispatch/MockInvoker.java16
-rw-r--r--container-search/src/test/java/com/yahoo/search/dispatch/rpc/ProtobufSerializationTest.java68
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++;
- }
- }
}