aboutsummaryrefslogtreecommitdiffstats
path: root/container-search/src/test
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2022-05-03 20:25:15 +0200
committerJon Bratseth <bratseth@gmail.com>2022-05-03 20:25:15 +0200
commit840e1572b6e6d44384e61dab60b1b33f1d52260d (patch)
treeedff126e54644de96ad1e2c12c6d7191fcd4edad /container-search/src/test
parent3ae5c8ae0b25b8619f97ca28fecde3c0ec510ebe (diff)
Revert "Merge pull request #22428 from vespa-engine/revert-22426-bratseth/schema-info-5"
This reverts commit d6cb1273bcebdea6b8404b242cecb81802d0fb60, reversing changes made to de8e6f7128dc6489800eae8ce8cdcc6e3414475e.
Diffstat (limited to 'container-search/src/test')
-rw-r--r--container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java2
-rw-r--r--container-search/src/test/java/com/yahoo/prelude/fastsearch/SlimeSummaryTestCase.java69
-rw-r--r--container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary1.cfg10
-rw-r--r--container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary2.cfg12
-rw-r--r--container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary3.cfg10
-rw-r--r--container-search/src/test/java/com/yahoo/prelude/fastsearch/summary.cfg36
-rw-r--r--container-search/src/test/java/com/yahoo/prelude/fastsearch/test/DocsumDefinitionTestCase.java57
-rw-r--r--container-search/src/test/java/com/yahoo/prelude/fastsearch/test/FastSearcherTestCase.java25
-rw-r--r--container-search/src/test/java/com/yahoo/prelude/fastsearch/test/documentdb-info.cfg353
-rw-r--r--container-search/src/test/java/com/yahoo/search/grouping/vespa/HitConverterTestCase.java14
-rw-r--r--container-search/src/test/java/com/yahoo/search/schema/SchemaInfoTester.java22
-rw-r--r--container-search/src/test/java/com/yahoo/vespa/streamingvisitors/VdsStreamingSearcherTestCase.java10
12 files changed, 131 insertions, 489 deletions
diff --git a/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java
index 2d62e4c0154..434f4bcc8e0 100644
--- a/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java
+++ b/container-search/src/test/java/com/yahoo/prelude/cluster/ClusterSearcherTestCase.java
@@ -522,6 +522,7 @@ public class ClusterSearcherTestCase {
DocumentdbInfoConfig.Builder documentDbConfig = new DocumentdbInfoConfig.Builder();
documentDbConfig.documentdb(new DocumentdbInfoConfig.Documentdb.Builder().name("type1"));
+ var schema = new Schema.Builder("type1");
DispatchConfig dispatchConfig = new DispatchConfig.Builder().build();
Dispatcher dispatcher = new Dispatcher(new RpcResourcePool(dispatchConfig),
@@ -537,6 +538,7 @@ public class ClusterSearcherTestCase {
qrSearchersConfig.build(),
clusterConfig.build(),
documentDbConfig.build(),
+ new SchemaInfo(List.of(schema.build()), Map.of()),
dispatchers,
vipStatus,
null);
diff --git a/container-search/src/test/java/com/yahoo/prelude/fastsearch/SlimeSummaryTestCase.java b/container-search/src/test/java/com/yahoo/prelude/fastsearch/SlimeSummaryTestCase.java
index 8b21d1e03b2..a174bde3902 100644
--- a/container-search/src/test/java/com/yahoo/prelude/fastsearch/SlimeSummaryTestCase.java
+++ b/container-search/src/test/java/com/yahoo/prelude/fastsearch/SlimeSummaryTestCase.java
@@ -10,6 +10,8 @@ import com.yahoo.prelude.hitfield.XMLString;
import com.yahoo.search.result.FeatureData;
import com.yahoo.search.result.Hit;
import com.yahoo.search.result.StructuredData;
+import com.yahoo.search.schema.DocumentSummary;
+import com.yahoo.search.schema.Schema;
import com.yahoo.slime.BinaryFormat;
import com.yahoo.slime.Cursor;
import com.yahoo.slime.Slime;
@@ -43,7 +45,7 @@ public class SlimeSummaryTestCase {
@Test
public void testDecodingEmpty() {
- DocsumDefinitionSet docsum = createDocsumDefinitionSet(summary_cf);
+ DocsumDefinitionSet docsum = createDocsumDefinitionSet();
FastHit hit = new FastHit();
assertNull(docsum.lazyDecode("default", emptySummary(), hit));
assertNull(hit.getField("integer_field"));
@@ -69,7 +71,7 @@ public class SlimeSummaryTestCase {
@Test
public void testTimeout() {
- DocsumDefinitionSet docsum = createDocsumDefinitionSet(summary_cf);
+ DocsumDefinitionSet docsum = createDocsumDefinitionSet();
FastHit hit = new FastHit();
assertEquals("Hit hit index:null/0/000000000000000000000000 (relevance 0.0) [fasthit, globalid: 0 0 0 0 0 0 0 0 0 0 0 0, partId: 0, distributionkey: 0] failed: Timed out....",
docsum.lazyDecode("default", timeoutSummary(), hit));
@@ -79,7 +81,7 @@ public class SlimeSummaryTestCase {
public void testDecoding() {
Tensor tensor1 = Tensor.from("tensor(x{},y{}):{{x:foo,y:bar}:0.1}");
Tensor tensor2 = Tensor.from("tensor(x[1],y[1]):{{x:0,y:0}:-0.3}");
- DocsumDefinitionSet docsum = createDocsumDefinitionSet(summary_cf);
+ DocsumDefinitionSet docsum = createDocsumDefinitionSet();
FastHit hit = new FastHit();
assertNull(docsum.lazyDecode("default", fullSummary(tensor1, tensor2), hit));
assertEquals(4, hit.getField("integer_field"));
@@ -127,10 +129,10 @@ public class SlimeSummaryTestCase {
@Test
public void testFieldAccessAPI() {
- DocsumDefinitionSet partialDocsum1 = createDocsumDefinitionSet(partial_summary1_cf);
- DocsumDefinitionSet partialDocsum2 = createDocsumDefinitionSet(partial_summary2_cf);
- DocsumDefinitionSet partialDocsum3 = createDocsumDefinitionSet(partial_summary3_cf);
- DocsumDefinitionSet fullDocsum = createDocsumDefinitionSet(summary_cf);
+ DocsumDefinitionSet partialDocsum1 = createPartialDocsumDefinitionSet1();
+ DocsumDefinitionSet partialDocsum2 = createPartialDocsumDefinitionSet2();
+ DocsumDefinitionSet partialDocsum3 = createPartialDocsumDefinitionSet3();
+ DocsumDefinitionSet fullDocsum = createDocsumDefinitionSet();
FastHit hit = new FastHit();
Map<String, Object> expected = new HashMap<>();
@@ -437,14 +439,59 @@ public class SlimeSummaryTestCase {
return buf.array();
}
- private DocsumDefinitionSet createDocsumDefinitionSet(String configID) {
- DocumentdbInfoConfig config = new ConfigGetter<>(DocumentdbInfoConfig.class).getConfig(configID);
- return new DocsumDefinitionSet(config.documentdb(0));
+ private DocsumDefinitionSet createDocsumDefinitionSet() {
+ var schema = new Schema.Builder("test");
+ var summary = new DocumentSummary.Builder("default");
+ summary.add(new DocumentSummary.Field("integer_field", "integer"));
+ summary.add(new DocumentSummary.Field("short_field", "short"));
+ summary.add(new DocumentSummary.Field("byte_field", "byte"));
+ summary.add(new DocumentSummary.Field("float_field", "float"));
+ summary.add(new DocumentSummary.Field("double_field", "double"));
+ summary.add(new DocumentSummary.Field("int64_field", "int64"));
+ summary.add(new DocumentSummary.Field("string_field", "string"));
+ summary.add(new DocumentSummary.Field("data_field", "data"));
+ summary.add(new DocumentSummary.Field("longstring_field", "longstring"));
+ summary.add(new DocumentSummary.Field("longdata_field", "longdata"));
+ summary.add(new DocumentSummary.Field("xmlstring_field", "xmlstring"));
+ summary.add(new DocumentSummary.Field("jsonstring_field", "jsonstring"));
+ summary.add(new DocumentSummary.Field("tensor_field1", "tensor"));
+ summary.add(new DocumentSummary.Field("tensor_field2", "tensor"));
+ summary.add(new DocumentSummary.Field("summaryfeatures", "featuredata"));
+ schema.add(summary.build());
+ return new DocsumDefinitionSet(schema.build());
+ }
+
+ private DocsumDefinitionSet createPartialDocsumDefinitionSet1() {
+ var schema = new Schema.Builder("test");
+ var summary = new DocumentSummary.Builder("default");
+ summary.add(new DocumentSummary.Field("integer_field", "integer"));
+ summary.add(new DocumentSummary.Field("short_field", "short"));
+ schema.add(summary.build());
+ return new DocsumDefinitionSet(schema.build());
+ }
+
+ private DocsumDefinitionSet createPartialDocsumDefinitionSet2() {
+ var schema = new Schema.Builder("test");
+ var summary = new DocumentSummary.Builder("default");
+ summary.add(new DocumentSummary.Field("integer_field", "integer"));
+ summary.add(new DocumentSummary.Field("float_field", "float"));
+ summary.add(new DocumentSummary.Field("double_field", "double"));
+ schema.add(summary.build());
+ return new DocsumDefinitionSet(schema.build());
+ }
+
+ private DocsumDefinitionSet createPartialDocsumDefinitionSet3() {
+ var schema = new Schema.Builder("test");
+ var summary = new DocumentSummary.Builder("default");
+ summary.add(new DocumentSummary.Field("integer_field", "integer"));
+ summary.add(new DocumentSummary.Field("string_field", "string"));
+ schema.add(summary.build());
+ return new DocsumDefinitionSet(schema.build());
}
private static class Utf8FieldTraverser implements Hit.RawUtf8Consumer {
- private Map<String, Object> traversed;
+ private final Map<String, Object> traversed;
public Utf8FieldTraverser(Map<String, Object> traversed) {
this.traversed = traversed;
diff --git a/container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary1.cfg b/container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary1.cfg
deleted file mode 100644
index 5aa5c84d936..00000000000
--- a/container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary1.cfg
+++ /dev/null
@@ -1,10 +0,0 @@
-documentdb[1]
-documentdb[0].name test
-documentdb[0].summaryclass[1]
-documentdb[0].summaryclass[0].name default
-documentdb[0].summaryclass[0].id 1
-documentdb[0].summaryclass[0].fields[2]
-documentdb[0].summaryclass[0].fields[0].name integer_field
-documentdb[0].summaryclass[0].fields[0].type integer
-documentdb[0].summaryclass[0].fields[1].name short_field
-documentdb[0].summaryclass[0].fields[1].type short
diff --git a/container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary2.cfg b/container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary2.cfg
deleted file mode 100644
index bc870a63d66..00000000000
--- a/container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary2.cfg
+++ /dev/null
@@ -1,12 +0,0 @@
-documentdb[1]
-documentdb[0].name test
-documentdb[0].summaryclass[1]
-documentdb[0].summaryclass[0].name default
-documentdb[0].summaryclass[0].id 2
-documentdb[0].summaryclass[0].fields[3]
-documentdb[0].summaryclass[0].fields[0].name integer_field
-documentdb[0].summaryclass[0].fields[0].type integer
-documentdb[0].summaryclass[0].fields[1].name float_field
-documentdb[0].summaryclass[0].fields[1].type float
-documentdb[0].summaryclass[0].fields[2].name double_field
-documentdb[0].summaryclass[0].fields[2].type double
diff --git a/container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary3.cfg b/container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary3.cfg
deleted file mode 100644
index 5d7319fd393..00000000000
--- a/container-search/src/test/java/com/yahoo/prelude/fastsearch/partial-summary3.cfg
+++ /dev/null
@@ -1,10 +0,0 @@
-documentdb[1]
-documentdb[0].name test
-documentdb[0].summaryclass[1]
-documentdb[0].summaryclass[0].name partial3
-documentdb[0].summaryclass[0].id 3
-documentdb[0].summaryclass[0].fields[3]
-documentdb[0].summaryclass[0].fields[0].name integer_field
-documentdb[0].summaryclass[0].fields[0].type integer
-documentdb[0].summaryclass[0].fields[1].name string_field
-documentdb[0].summaryclass[0].fields[1].type string
diff --git a/container-search/src/test/java/com/yahoo/prelude/fastsearch/summary.cfg b/container-search/src/test/java/com/yahoo/prelude/fastsearch/summary.cfg
deleted file mode 100644
index e074eadcbc2..00000000000
--- a/container-search/src/test/java/com/yahoo/prelude/fastsearch/summary.cfg
+++ /dev/null
@@ -1,36 +0,0 @@
-documentdb[1]
-documentdb[0].name test
-documentdb[0].summaryclass[1]
-documentdb[0].summaryclass[0].name default
-documentdb[0].summaryclass[0].id 0
-documentdb[0].summaryclass[0].fields[15]
-documentdb[0].summaryclass[0].fields[0].name integer_field
-documentdb[0].summaryclass[0].fields[0].type integer
-documentdb[0].summaryclass[0].fields[1].name short_field
-documentdb[0].summaryclass[0].fields[1].type short
-documentdb[0].summaryclass[0].fields[2].name byte_field
-documentdb[0].summaryclass[0].fields[2].type byte
-documentdb[0].summaryclass[0].fields[3].name float_field
-documentdb[0].summaryclass[0].fields[3].type float
-documentdb[0].summaryclass[0].fields[4].name double_field
-documentdb[0].summaryclass[0].fields[4].type double
-documentdb[0].summaryclass[0].fields[5].name int64_field
-documentdb[0].summaryclass[0].fields[5].type int64
-documentdb[0].summaryclass[0].fields[6].name string_field
-documentdb[0].summaryclass[0].fields[6].type string
-documentdb[0].summaryclass[0].fields[7].name data_field
-documentdb[0].summaryclass[0].fields[7].type data
-documentdb[0].summaryclass[0].fields[8].name longstring_field
-documentdb[0].summaryclass[0].fields[8].type longstring
-documentdb[0].summaryclass[0].fields[9].name longdata_field
-documentdb[0].summaryclass[0].fields[9].type longdata
-documentdb[0].summaryclass[0].fields[10].name xmlstring_field
-documentdb[0].summaryclass[0].fields[10].type xmlstring
-documentdb[0].summaryclass[0].fields[11].name jsonstring_field
-documentdb[0].summaryclass[0].fields[11].type jsonstring
-documentdb[0].summaryclass[0].fields[12].name tensor_field1
-documentdb[0].summaryclass[0].fields[12].type tensor
-documentdb[0].summaryclass[0].fields[13].name tensor_field2
-documentdb[0].summaryclass[0].fields[13].type tensor
-documentdb[0].summaryclass[0].fields[14].name summaryfeatures
-documentdb[0].summaryclass[0].fields[14].type featuredata
diff --git a/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/DocsumDefinitionTestCase.java b/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/DocsumDefinitionTestCase.java
index 6921880d725..da9d849db90 100644
--- a/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/DocsumDefinitionTestCase.java
+++ b/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/DocsumDefinitionTestCase.java
@@ -1,8 +1,6 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.prelude.fastsearch.test;
-import com.yahoo.config.subscription.ConfigGetter;
-import com.yahoo.prelude.fastsearch.DocumentdbInfoConfig;
import com.yahoo.prelude.fastsearch.ByteField;
import com.yahoo.prelude.fastsearch.DataField;
import com.yahoo.prelude.fastsearch.DocsumDefinition;
@@ -12,6 +10,8 @@ import com.yahoo.prelude.fastsearch.IntegerField;
import com.yahoo.prelude.fastsearch.StringField;
import com.yahoo.document.DocumentId;
import com.yahoo.document.GlobalId;
+import com.yahoo.search.schema.DocumentSummary;
+import com.yahoo.search.schema.Schema;
import com.yahoo.slime.BinaryFormat;
import com.yahoo.slime.Cursor;
import com.yahoo.slime.Slime;
@@ -21,9 +21,8 @@ import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotEquals;
import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
/**
@@ -34,37 +33,8 @@ import static org.junit.Assert.assertTrue;
public class DocsumDefinitionTestCase {
@Test
- public void testReading() {
- String summary_cf = "file:src/test/java/com/yahoo/prelude/fastsearch/test/documentdb-info.cfg";
- DocsumDefinitionSet set = createDocsumDefinitionSet(summary_cf);
-
- String[] defs = new String[] { "[default,default]", "[version1,version1]",
- "[withranklog,withranklog]", "[version2,version2]", "[version3,version3]",
- "[version4,version4]", "[version5,version5]" };
- String setAsString = set.toString();
- for (String d : defs) {
- assertFalse(setAsString.indexOf(d) == -1);
- }
- assertEquals(7, set.size());
-
- DocsumDefinition docsum0 = set.getDocsum("default");
-
- assertNotNull(docsum0);
- assertEquals("default", docsum0.getName());
- assertEquals(19, docsum0.getFieldCount());
- assertNull(docsum0.getField(19));
- assertEquals("DSHOST", docsum0.getField(7).getName());
-
- assertTrue(docsum0.getField(1) instanceof StringField);
- assertTrue(docsum0.getField(6) instanceof ByteField);
- assertTrue(docsum0.getField(7) instanceof IntegerField);
- assertTrue(docsum0.getField(18) instanceof DataField);
- }
-
- @Test
public void testDecoding() {
- String summary_cf = "file:src/test/java/com/yahoo/prelude/fastsearch/test/documentdb-info.cfg";
- DocsumDefinitionSet set = createDocsumDefinitionSet(summary_cf);
+ DocsumDefinitionSet set = createDocsumDefinitionSet();
FastHit hit = new FastHit();
set.lazyDecode(null, makeDocsum(), hit);
@@ -87,10 +57,6 @@ public class DocsumDefinitionTestCase {
return sb.toString();
}
- public static GlobalId createGlobalId(int docId) {
- return new GlobalId((new DocumentId("id:ns:type::" + docId)).getGlobalId());
- }
-
public static byte[] makeDocsum() {
Slime slime = new Slime();
Cursor docsum = slime.setObject();
@@ -110,9 +76,18 @@ public class DocsumDefinitionTestCase {
return buf.array();
}
- public static DocsumDefinitionSet createDocsumDefinitionSet(String configID) {
- DocumentdbInfoConfig config = new ConfigGetter<>(DocumentdbInfoConfig.class).getConfig(configID);
- return new DocsumDefinitionSet(config.documentdb(0));
+ public static DocsumDefinitionSet createDocsumDefinitionSet() {
+ var schema = new Schema.Builder("test");
+ var summary = new DocumentSummary.Builder("default");
+ summary.add(new DocumentSummary.Field("TOPIC", "string"));
+ summary.add(new DocumentSummary.Field("TITLE", "string"));
+ summary.add(new DocumentSummary.Field("DYNTEASER", "string"));
+ summary.add(new DocumentSummary.Field("EXTINFOSOURCE", "integer"));
+ summary.add(new DocumentSummary.Field("LANG1", "integer"));
+ summary.add(new DocumentSummary.Field("WORDS", "integer"));
+ summary.add(new DocumentSummary.Field("BYTES", "byte"));
+ schema.add(summary.build());
+ return new DocsumDefinitionSet(schema.build());
}
}
diff --git a/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/FastSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/FastSearcherTestCase.java
index da93e0e845b..c9193d08381 100644
--- a/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/FastSearcherTestCase.java
+++ b/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/FastSearcherTestCase.java
@@ -24,12 +24,17 @@ import com.yahoo.search.grouping.request.EachOperation;
import com.yahoo.search.grouping.request.GroupingOperation;
import com.yahoo.search.rendering.RendererRegistry;
import com.yahoo.search.result.ErrorMessage;
+import com.yahoo.search.schema.DocumentSummary;
+import com.yahoo.search.schema.RankProfile;
+import com.yahoo.search.schema.Schema;
+import com.yahoo.search.schema.SchemaInfo;
import com.yahoo.search.searchchain.Execution;
import org.junit.Test;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -56,7 +61,8 @@ public class FastSearcherTestCase {
MockDispatcher.create(Collections.emptyList()),
new SummaryParameters(null),
new ClusterParams("testhittype"),
- documentdbInfoConfig);
+ documentdbInfoConfig,
+ SchemaInfo.empty());
String query = "?junkparam=ignored";
Result result = doSearch(fastSearcher,new Query(query), 0, 10);
@@ -90,7 +96,8 @@ public class FastSearcherTestCase {
MockDispatcher.create(Collections.singletonList(new Node(0, "host0", 0))),
new SummaryParameters(null),
new ClusterParams("testhittype"),
- documentdbInfoConfig);
+ documentdbInfoConfig,
+ SchemaInfo.empty());
Query q = new Query("?query=foo");
GroupingRequest request1 = GroupingRequest.newInstance(q);
request1.setRootOperation(new AllOperation());
@@ -108,13 +115,18 @@ public class FastSearcherTestCase {
@Test
public void testSummaryNeedsQuery() {
- ConfigGetter<DocumentdbInfoConfig> getter = new ConfigGetter<>(DocumentdbInfoConfig.class);
- DocumentdbInfoConfig config = getter.getConfig("file:src/test/java/com/yahoo/prelude/fastsearch/test/documentdb-info.cfg");
+ var documentDb = new DocumentdbInfoConfig(new DocumentdbInfoConfig.Builder().documentdb(new DocumentdbInfoConfig.Documentdb.Builder().name("test")));
+ var schema = new Schema.Builder("test")
+ .add(new DocumentSummary.Builder("default").build())
+ .add(new RankProfile.Builder("default").setHasRankFeatures(false)
+ .setHasSummaryFeatures(false)
+ .build());
FastSearcher backend = new FastSearcher("container.0",
MockDispatcher.create(Collections.singletonList(new Node(0, "host0", 0))),
new SummaryParameters(null),
new ClusterParams("testhittype"),
- config);
+ documentDb,
+ new SchemaInfo(List.of(schema.build()), Map.of()));
Query q = new Query("?query=foo");
Result result = doSearch(backend, q, 0, 10);
assertFalse(backend.summaryNeedsQuery(q));
@@ -133,7 +145,8 @@ public class FastSearcherTestCase {
dispatcher,
new SummaryParameters(null),
new ClusterParams("testhittype"),
- documentdbInfoConfig);
+ documentdbInfoConfig,
+ SchemaInfo.empty());
Query q = new Query("?query=foo");
GroupingRequest request1 = GroupingRequest.newInstance(q);
request1.setRootOperation(new AllOperation());
diff --git a/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/documentdb-info.cfg b/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/documentdb-info.cfg
deleted file mode 100644
index cc65ab2565e..00000000000
--- a/container-search/src/test/java/com/yahoo/prelude/fastsearch/test/documentdb-info.cfg
+++ /dev/null
@@ -1,353 +0,0 @@
-documentdb[1]
-documentdb[0].name test
-documentdb[0].summaryclass[7]
-documentdb[0].summaryclass[0].name default
-documentdb[0].summaryclass[0].id 0
-documentdb[0].summaryclass[0].fields[19]
-documentdb[0].summaryclass[0].fields[0].name URL
-documentdb[0].summaryclass[0].fields[0].type string
-documentdb[0].summaryclass[0].fields[1].name TITLE
-documentdb[0].summaryclass[0].fields[1].type string
-documentdb[0].summaryclass[0].fields[2].name TEASER
-documentdb[0].summaryclass[0].fields[2].type string
-documentdb[0].summaryclass[0].fields[3].name TOPIC
-documentdb[0].summaryclass[0].fields[3].type string
-documentdb[0].summaryclass[0].fields[4].name FASTTOPIC
-documentdb[0].summaryclass[0].fields[4].type string
-documentdb[0].summaryclass[0].fields[5].name EXTINFO
-documentdb[0].summaryclass[0].fields[5].type string
-documentdb[0].summaryclass[0].fields[6].name EXTINFOSOURCE
-documentdb[0].summaryclass[0].fields[6].type byte
-documentdb[0].summaryclass[0].fields[7].name DSHOST
-documentdb[0].summaryclass[0].fields[7].type integer
-documentdb[0].summaryclass[0].fields[8].name DSKEY
-documentdb[0].summaryclass[0].fields[8].type integer
-documentdb[0].summaryclass[0].fields[9].name BYTES
-documentdb[0].summaryclass[0].fields[9].type integer
-documentdb[0].summaryclass[0].fields[10].name WORDS
-documentdb[0].summaryclass[0].fields[10].type integer
-documentdb[0].summaryclass[0].fields[11].name MODDATE
-documentdb[0].summaryclass[0].fields[11].type integer
-documentdb[0].summaryclass[0].fields[12].name CRAWLDATE
-documentdb[0].summaryclass[0].fields[12].type integer
-documentdb[0].summaryclass[0].fields[13].name LANG1
-documentdb[0].summaryclass[0].fields[13].type byte
-documentdb[0].summaryclass[0].fields[14].name LANG2
-documentdb[0].summaryclass[0].fields[14].type byte
-documentdb[0].summaryclass[0].fields[15].name LANG3
-documentdb[0].summaryclass[0].fields[15].type byte
-documentdb[0].summaryclass[0].fields[16].name LANG4
-documentdb[0].summaryclass[0].fields[16].type byte
-documentdb[0].summaryclass[0].fields[17].name IPADDRESS
-documentdb[0].summaryclass[0].fields[17].type integer
-documentdb[0].summaryclass[0].fields[18].name DOCVECTOR
-documentdb[0].summaryclass[0].fields[18].type data
-documentdb[0].summaryclass[1].name version1
-documentdb[0].summaryclass[1].id 1
-documentdb[0].summaryclass[1].fields[20]
-documentdb[0].summaryclass[1].fields[0].name URL
-documentdb[0].summaryclass[1].fields[0].type string
-documentdb[0].summaryclass[1].fields[1].name TITLE
-documentdb[0].summaryclass[1].fields[1].type string
-documentdb[0].summaryclass[1].fields[2].name TEASER
-documentdb[0].summaryclass[1].fields[2].type string
-documentdb[0].summaryclass[1].fields[3].name TOPIC
-documentdb[0].summaryclass[1].fields[3].type string
-documentdb[0].summaryclass[1].fields[4].name FASTTOPIC
-documentdb[0].summaryclass[1].fields[4].type string
-documentdb[0].summaryclass[1].fields[5].name EXTINFO
-documentdb[0].summaryclass[1].fields[5].type string
-documentdb[0].summaryclass[1].fields[6].name EXTINFOSOURCE
-documentdb[0].summaryclass[1].fields[6].type byte
-documentdb[0].summaryclass[1].fields[7].name DSHOST
-documentdb[0].summaryclass[1].fields[7].type integer
-documentdb[0].summaryclass[1].fields[8].name DSKEY
-documentdb[0].summaryclass[1].fields[8].type integer
-documentdb[0].summaryclass[1].fields[9].name BYTES
-documentdb[0].summaryclass[1].fields[9].type integer
-documentdb[0].summaryclass[1].fields[10].name WORDS
-documentdb[0].summaryclass[1].fields[10].type integer
-documentdb[0].summaryclass[1].fields[11].name MODDATE
-documentdb[0].summaryclass[1].fields[11].type integer
-documentdb[0].summaryclass[1].fields[12].name CRAWLDATE
-documentdb[0].summaryclass[1].fields[12].type integer
-documentdb[0].summaryclass[1].fields[13].name LANG1
-documentdb[0].summaryclass[1].fields[13].type byte
-documentdb[0].summaryclass[1].fields[14].name LANG2
-documentdb[0].summaryclass[1].fields[14].type byte
-documentdb[0].summaryclass[1].fields[15].name LANG3
-documentdb[0].summaryclass[1].fields[15].type byte
-documentdb[0].summaryclass[1].fields[16].name LANG4
-documentdb[0].summaryclass[1].fields[16].type byte
-documentdb[0].summaryclass[1].fields[17].name IPADDRESS
-documentdb[0].summaryclass[1].fields[17].type integer
-documentdb[0].summaryclass[1].fields[18].name DOCVECTOR
-documentdb[0].summaryclass[1].fields[18].type data
-documentdb[0].summaryclass[1].fields[19].name PARTNERSITEIDS
-documentdb[0].summaryclass[1].fields[19].type string
-documentdb[0].summaryclass[2].name version2
-documentdb[0].summaryclass[2].id 2
-documentdb[0].summaryclass[2].fields[21]
-documentdb[0].summaryclass[2].fields[0].name URL
-documentdb[0].summaryclass[2].fields[0].type string
-documentdb[0].summaryclass[2].fields[1].name TITLE
-documentdb[0].summaryclass[2].fields[1].type string
-documentdb[0].summaryclass[2].fields[2].name TEASER
-documentdb[0].summaryclass[2].fields[2].type string
-documentdb[0].summaryclass[2].fields[3].name TOPIC
-documentdb[0].summaryclass[2].fields[3].type string
-documentdb[0].summaryclass[2].fields[4].name FASTTOPIC
-documentdb[0].summaryclass[2].fields[4].type string
-documentdb[0].summaryclass[2].fields[5].name EXTINFO
-documentdb[0].summaryclass[2].fields[5].type string
-documentdb[0].summaryclass[2].fields[6].name EXTINFOSOURCE
-documentdb[0].summaryclass[2].fields[6].type byte
-documentdb[0].summaryclass[2].fields[7].name DSHOST
-documentdb[0].summaryclass[2].fields[7].type integer
-documentdb[0].summaryclass[2].fields[8].name DSKEY
-documentdb[0].summaryclass[2].fields[8].type integer
-documentdb[0].summaryclass[2].fields[9].name BYTES
-documentdb[0].summaryclass[2].fields[9].type integer
-documentdb[0].summaryclass[2].fields[10].name WORDS
-documentdb[0].summaryclass[2].fields[10].type integer
-documentdb[0].summaryclass[2].fields[11].name MODDATE
-documentdb[0].summaryclass[2].fields[11].type integer
-documentdb[0].summaryclass[2].fields[12].name CRAWLDATE
-documentdb[0].summaryclass[2].fields[12].type integer
-documentdb[0].summaryclass[2].fields[13].name LANG1
-documentdb[0].summaryclass[2].fields[13].type byte
-documentdb[0].summaryclass[2].fields[14].name LANG2
-documentdb[0].summaryclass[2].fields[14].type byte
-documentdb[0].summaryclass[2].fields[15].name LANG3
-documentdb[0].summaryclass[2].fields[15].type byte
-documentdb[0].summaryclass[2].fields[16].name LANG4
-documentdb[0].summaryclass[2].fields[16].type byte
-documentdb[0].summaryclass[2].fields[17].name IPADDRESS
-documentdb[0].summaryclass[2].fields[17].type integer
-documentdb[0].summaryclass[2].fields[18].name DOCVECTOR
-documentdb[0].summaryclass[2].fields[18].type data
-documentdb[0].summaryclass[2].fields[19].name PARTNERSITEIDS
-documentdb[0].summaryclass[2].fields[19].type string
-documentdb[0].summaryclass[2].fields[20].name DYNTEASER
-documentdb[0].summaryclass[2].fields[20].type string
-documentdb[0].summaryclass[3].name version3
-documentdb[0].summaryclass[3].id 3
-documentdb[0].summaryclass[3].fields[23]
-documentdb[0].summaryclass[3].fields[0].name URL
-documentdb[0].summaryclass[3].fields[0].type string
-documentdb[0].summaryclass[3].fields[1].name TITLE
-documentdb[0].summaryclass[3].fields[1].type string
-documentdb[0].summaryclass[3].fields[2].name TEASER
-documentdb[0].summaryclass[3].fields[2].type string
-documentdb[0].summaryclass[3].fields[3].name TOPIC
-documentdb[0].summaryclass[3].fields[3].type string
-documentdb[0].summaryclass[3].fields[4].name FASTTOPIC
-documentdb[0].summaryclass[3].fields[4].type string
-documentdb[0].summaryclass[3].fields[5].name EXTINFO
-documentdb[0].summaryclass[3].fields[5].type string
-documentdb[0].summaryclass[3].fields[6].name EXTINFOSOURCE
-documentdb[0].summaryclass[3].fields[6].type byte
-documentdb[0].summaryclass[3].fields[7].name DSHOST
-documentdb[0].summaryclass[3].fields[7].type integer
-documentdb[0].summaryclass[3].fields[8].name DSKEY
-documentdb[0].summaryclass[3].fields[8].type integer
-documentdb[0].summaryclass[3].fields[9].name BYTES
-documentdb[0].summaryclass[3].fields[9].type integer
-documentdb[0].summaryclass[3].fields[10].name WORDS
-documentdb[0].summaryclass[3].fields[10].type integer
-documentdb[0].summaryclass[3].fields[11].name MODDATE
-documentdb[0].summaryclass[3].fields[11].type integer
-documentdb[0].summaryclass[3].fields[12].name CRAWLDATE
-documentdb[0].summaryclass[3].fields[12].type integer
-documentdb[0].summaryclass[3].fields[13].name LANG1
-documentdb[0].summaryclass[3].fields[13].type byte
-documentdb[0].summaryclass[3].fields[14].name LANG2
-documentdb[0].summaryclass[3].fields[14].type byte
-documentdb[0].summaryclass[3].fields[15].name LANG3
-documentdb[0].summaryclass[3].fields[15].type byte
-documentdb[0].summaryclass[3].fields[16].name LANG4
-documentdb[0].summaryclass[3].fields[16].type byte
-documentdb[0].summaryclass[3].fields[17].name IPADDRESS
-documentdb[0].summaryclass[3].fields[17].type integer
-documentdb[0].summaryclass[3].fields[18].name DOCVECTOR
-documentdb[0].summaryclass[3].fields[18].type data
-documentdb[0].summaryclass[3].fields[19].name PARTNERSITEIDS
-documentdb[0].summaryclass[3].fields[19].type string
-documentdb[0].summaryclass[3].fields[20].name MIMETYPE
-documentdb[0].summaryclass[3].fields[20].type string
-documentdb[0].summaryclass[3].fields[21].name STATICRANKLOG
-documentdb[0].summaryclass[3].fields[21].type string
-documentdb[0].summaryclass[3].fields[22].name DYNTEASER
-documentdb[0].summaryclass[3].fields[22].type longstring
-documentdb[0].summaryclass[4].name version4
-documentdb[0].summaryclass[4].id 4
-documentdb[0].summaryclass[4].fields[24]
-documentdb[0].summaryclass[4].fields[0].name URL
-documentdb[0].summaryclass[4].fields[0].type string
-documentdb[0].summaryclass[4].fields[1].name CCURL
-documentdb[0].summaryclass[4].fields[1].type string
-documentdb[0].summaryclass[4].fields[2].name TITLE
-documentdb[0].summaryclass[4].fields[2].type string
-documentdb[0].summaryclass[4].fields[3].name TEASER
-documentdb[0].summaryclass[4].fields[3].type string
-documentdb[0].summaryclass[4].fields[4].name TOPIC
-documentdb[0].summaryclass[4].fields[4].type string
-documentdb[0].summaryclass[4].fields[5].name FASTTOPIC
-documentdb[0].summaryclass[4].fields[5].type string
-documentdb[0].summaryclass[4].fields[6].name EXTINFO
-documentdb[0].summaryclass[4].fields[6].type string
-documentdb[0].summaryclass[4].fields[7].name EXTINFOSOURCE
-documentdb[0].summaryclass[4].fields[7].type byte
-documentdb[0].summaryclass[4].fields[8].name DSHOST
-documentdb[0].summaryclass[4].fields[8].type integer
-documentdb[0].summaryclass[4].fields[9].name DSKEY
-documentdb[0].summaryclass[4].fields[9].type integer
-documentdb[0].summaryclass[4].fields[10].name BYTES
-documentdb[0].summaryclass[4].fields[10].type integer
-documentdb[0].summaryclass[4].fields[11].name WORDS
-documentdb[0].summaryclass[4].fields[11].type integer
-documentdb[0].summaryclass[4].fields[12].name MODDATE
-documentdb[0].summaryclass[4].fields[12].type integer
-documentdb[0].summaryclass[4].fields[13].name CRAWLDATE
-documentdb[0].summaryclass[4].fields[13].type integer
-documentdb[0].summaryclass[4].fields[14].name LANG1
-documentdb[0].summaryclass[4].fields[14].type byte
-documentdb[0].summaryclass[4].fields[15].name LANG2
-documentdb[0].summaryclass[4].fields[15].type byte
-documentdb[0].summaryclass[4].fields[16].name LANG3
-documentdb[0].summaryclass[4].fields[16].type byte
-documentdb[0].summaryclass[4].fields[17].name LANG4
-documentdb[0].summaryclass[4].fields[17].type byte
-documentdb[0].summaryclass[4].fields[18].name IPADDRESS
-documentdb[0].summaryclass[4].fields[18].type integer
-documentdb[0].summaryclass[4].fields[19].name DOCVECTOR
-documentdb[0].summaryclass[4].fields[19].type data
-documentdb[0].summaryclass[4].fields[20].name PARTNERSITEIDS
-documentdb[0].summaryclass[4].fields[20].type string
-documentdb[0].summaryclass[4].fields[21].name MIMETYPE
-documentdb[0].summaryclass[4].fields[21].type string
-documentdb[0].summaryclass[4].fields[22].name STATICRANKLOG
-documentdb[0].summaryclass[4].fields[22].type string
-documentdb[0].summaryclass[4].fields[23].name DYNTEASER
-documentdb[0].summaryclass[4].fields[23].type longstring
-documentdb[0].summaryclass[5].name version5
-documentdb[0].summaryclass[5].id 5
-documentdb[0].summaryclass[5].fields[25]
-documentdb[0].summaryclass[5].fields[0].name URL
-documentdb[0].summaryclass[5].fields[0].type string
-documentdb[0].summaryclass[5].fields[1].name URLLIST
-documentdb[0].summaryclass[5].fields[1].type string
-documentdb[0].summaryclass[5].fields[2].name CCURL
-documentdb[0].summaryclass[5].fields[2].type string
-documentdb[0].summaryclass[5].fields[3].name TITLE
-documentdb[0].summaryclass[5].fields[3].type string
-documentdb[0].summaryclass[5].fields[4].name TEASER
-documentdb[0].summaryclass[5].fields[4].type string
-documentdb[0].summaryclass[5].fields[5].name TOPIC
-documentdb[0].summaryclass[5].fields[5].type string
-documentdb[0].summaryclass[5].fields[6].name FASTTOPIC
-documentdb[0].summaryclass[5].fields[6].type string
-documentdb[0].summaryclass[5].fields[7].name EXTINFO
-documentdb[0].summaryclass[5].fields[7].type string
-documentdb[0].summaryclass[5].fields[8].name EXTINFOSOURCE
-documentdb[0].summaryclass[5].fields[8].type byte
-documentdb[0].summaryclass[5].fields[9].name DSHOST
-documentdb[0].summaryclass[5].fields[9].type integer
-documentdb[0].summaryclass[5].fields[10].name DSKEY
-documentdb[0].summaryclass[5].fields[10].type integer
-documentdb[0].summaryclass[5].fields[11].name BYTES
-documentdb[0].summaryclass[5].fields[11].type integer
-documentdb[0].summaryclass[5].fields[12].name WORDS
-documentdb[0].summaryclass[5].fields[12].type integer
-documentdb[0].summaryclass[5].fields[13].name MODDATE
-documentdb[0].summaryclass[5].fields[13].type integer
-documentdb[0].summaryclass[5].fields[14].name CRAWLDATE
-documentdb[0].summaryclass[5].fields[14].type integer
-documentdb[0].summaryclass[5].fields[15].name LANG1
-documentdb[0].summaryclass[5].fields[15].type byte
-documentdb[0].summaryclass[5].fields[16].name LANG2
-documentdb[0].summaryclass[5].fields[16].type byte
-documentdb[0].summaryclass[5].fields[17].name LANG3
-documentdb[0].summaryclass[5].fields[17].type byte
-documentdb[0].summaryclass[5].fields[18].name LANG4
-documentdb[0].summaryclass[5].fields[18].type byte
-documentdb[0].summaryclass[5].fields[19].name IPADDRESS
-documentdb[0].summaryclass[5].fields[19].type integer
-documentdb[0].summaryclass[5].fields[20].name DOCVECTOR
-documentdb[0].summaryclass[5].fields[20].type data
-documentdb[0].summaryclass[5].fields[21].name PARTNERSITEIDS
-documentdb[0].summaryclass[5].fields[21].type string
-documentdb[0].summaryclass[5].fields[22].name MIMETYPE
-documentdb[0].summaryclass[5].fields[22].type string
-documentdb[0].summaryclass[5].fields[23].name STATICRANKLOG
-documentdb[0].summaryclass[5].fields[23].type string
-documentdb[0].summaryclass[5].fields[24].name DYNTEASER
-documentdb[0].summaryclass[5].fields[24].type longstring
-documentdb[0].summaryclass[6].name withranklog
-documentdb[0].summaryclass[6].id 237
-documentdb[0].summaryclass[6].fields[31]
-documentdb[0].summaryclass[6].fields[0].name BYTES
-documentdb[0].summaryclass[6].fields[0].type integer
-documentdb[0].summaryclass[6].fields[1].name CCURL
-documentdb[0].summaryclass[6].fields[1].type string
-documentdb[0].summaryclass[6].fields[2].name CRAWLDATE
-documentdb[0].summaryclass[6].fields[2].type integer
-documentdb[0].summaryclass[6].fields[3].name DOCVECTOR
-documentdb[0].summaryclass[6].fields[3].type data
-documentdb[0].summaryclass[6].fields[4].name DSHOST
-documentdb[0].summaryclass[6].fields[4].type integer
-documentdb[0].summaryclass[6].fields[5].name DSKEY
-documentdb[0].summaryclass[6].fields[5].type integer
-documentdb[0].summaryclass[6].fields[6].name DYNTEASER
-documentdb[0].summaryclass[6].fields[6].type longstring
-documentdb[0].summaryclass[6].fields[7].name DYNTEASERINPUT
-documentdb[0].summaryclass[6].fields[7].type longstring
-documentdb[0].summaryclass[6].fields[8].name EXTINFO
-documentdb[0].summaryclass[6].fields[8].type string
-documentdb[0].summaryclass[6].fields[9].name EXTINFOSOURCE
-documentdb[0].summaryclass[6].fields[9].type byte
-documentdb[0].summaryclass[6].fields[10].name FASTTOPIC
-documentdb[0].summaryclass[6].fields[10].type string
-documentdb[0].summaryclass[6].fields[11].name IPADDRESS
-documentdb[0].summaryclass[6].fields[11].type integer
-documentdb[0].summaryclass[6].fields[12].name JUNIPER
-documentdb[0].summaryclass[6].fields[12].type longstring
-documentdb[0].summaryclass[6].fields[13].name JUNIPERMETRIC
-documentdb[0].summaryclass[6].fields[13].type integer
-documentdb[0].summaryclass[6].fields[14].name LABEL
-documentdb[0].summaryclass[6].fields[14].type string
-documentdb[0].summaryclass[6].fields[15].name LANG1
-documentdb[0].summaryclass[6].fields[15].type byte
-documentdb[0].summaryclass[6].fields[16].name LANG2
-documentdb[0].summaryclass[6].fields[16].type byte
-documentdb[0].summaryclass[6].fields[17].name LANG3
-documentdb[0].summaryclass[6].fields[17].type byte
-documentdb[0].summaryclass[6].fields[18].name LANG4
-documentdb[0].summaryclass[6].fields[18].type byte
-documentdb[0].summaryclass[6].fields[19].name MIMETYPE
-documentdb[0].summaryclass[6].fields[19].type string
-documentdb[0].summaryclass[6].fields[20].name MODDATE
-documentdb[0].summaryclass[6].fields[20].type integer
-documentdb[0].summaryclass[6].fields[21].name PARTNERSITEIDS
-documentdb[0].summaryclass[6].fields[21].type string
-documentdb[0].summaryclass[6].fields[22].name RANKLOG
-documentdb[0].summaryclass[6].fields[22].type string
-documentdb[0].summaryclass[6].fields[23].name STATICRANK
-documentdb[0].summaryclass[6].fields[23].type integer
-documentdb[0].summaryclass[6].fields[24].name STATICRANKLOG
-documentdb[0].summaryclass[6].fields[24].type string
-documentdb[0].summaryclass[6].fields[25].name TEASER
-documentdb[0].summaryclass[6].fields[25].type string
-documentdb[0].summaryclass[6].fields[26].name TITLE
-documentdb[0].summaryclass[6].fields[26].type string
-documentdb[0].summaryclass[6].fields[27].name TOPIC
-documentdb[0].summaryclass[6].fields[27].type string
-documentdb[0].summaryclass[6].fields[28].name URL
-documentdb[0].summaryclass[6].fields[28].type string
-documentdb[0].summaryclass[6].fields[29].name URLLIST
-documentdb[0].summaryclass[6].fields[29].type string
-documentdb[0].summaryclass[6].fields[30].name WORDS
-documentdb[0].summaryclass[6].fields[30].type integer
-documentdb[0].rankprofile[0].name "default"
-documentdb[0].rankprofile[0].hasSummaryFeatures false
-documentdb[0].rankprofile[0].hasRankFeatures false
diff --git a/container-search/src/test/java/com/yahoo/search/grouping/vespa/HitConverterTestCase.java b/container-search/src/test/java/com/yahoo/search/grouping/vespa/HitConverterTestCase.java
index ba54c3808f2..6c66c8f4ca6 100644
--- a/container-search/src/test/java/com/yahoo/search/grouping/vespa/HitConverterTestCase.java
+++ b/container-search/src/test/java/com/yahoo/search/grouping/vespa/HitConverterTestCase.java
@@ -13,6 +13,8 @@ import com.yahoo.search.Result;
import com.yahoo.search.Searcher;
import com.yahoo.search.result.Hit;
import com.yahoo.search.result.Relevance;
+import com.yahoo.search.schema.DocumentSummary;
+import com.yahoo.search.schema.Schema;
import com.yahoo.search.searchchain.Execution;
import com.yahoo.searchlib.aggregation.FS4Hit;
import com.yahoo.searchlib.aggregation.VdsHit;
@@ -98,17 +100,17 @@ public class HitConverterTestCase {
return new GroupingListHit(Collections.emptyList(), null);
}
- private static DocumentdbInfoConfig.Documentdb sixtynine() {
- DocumentdbInfoConfig.Documentdb.Builder summaryConfig = new DocumentdbInfoConfig.Documentdb.Builder();
- summaryConfig.name("none");
- summaryConfig.summaryclass(new DocumentdbInfoConfig.Documentdb.Summaryclass.Builder().id(0).name("69"));
- return new DocumentdbInfoConfig.Documentdb(summaryConfig);
+ private static DocsumDefinitionSet sixtynine() {
+ var schema = new Schema.Builder("none");
+ var summary = new DocumentSummary.Builder("69");
+ schema.add(summary.build());
+ return new DocsumDefinitionSet(schema.build());
}
@Test
public void requireThatVdsHitCanBeConverted() {
HitConverter converter = new HitConverter(new MySearcher(), new Query());
- GroupingListHit context = new GroupingListHit(null, new DocsumDefinitionSet(sixtynine()));
+ GroupingListHit context = new GroupingListHit(null, sixtynine());
VdsHit lowHit = new VdsHit("id:ns:type::", new byte[] { 0x55, 0x55, 0x55, 0x55 }, 1);
lowHit.setContext(context);
Hit hit = converter.toSearchHit("69", lowHit);
diff --git a/container-search/src/test/java/com/yahoo/search/schema/SchemaInfoTester.java b/container-search/src/test/java/com/yahoo/search/schema/SchemaInfoTester.java
index ff996464c4a..45bf5af5258 100644
--- a/container-search/src/test/java/com/yahoo/search/schema/SchemaInfoTester.java
+++ b/container-search/src/test/java/com/yahoo/search/schema/SchemaInfoTester.java
@@ -69,6 +69,11 @@ public class SchemaInfoTester {
.add(new RankProfile.Builder("inconsistent")
.addInput("query(myTensor1)", TensorType.fromSpec("tensor(a{},b{})"))
.build())
+ .add(new DocumentSummary.Builder("testSummary")
+ .add(new DocumentSummary.Field("field1", "string"))
+ .add(new DocumentSummary.Field("field2", "integer"))
+ .setDynamic(true)
+ .build())
.build());
schemas.add(new Schema.Builder("b")
.add(common)
@@ -98,17 +103,32 @@ public class SchemaInfoTester {
var schemaInfoInfoConfig = new SchemaInfoConfig.Builder();
+ // ----- Schema A
var schemaA = new SchemaInfoConfig.Schema.Builder();
schemaA.name("a");
+
schemaA.rankprofile(rankProfileCommon);
var rankProfileInconsistentA = new SchemaInfoConfig.Schema.Rankprofile.Builder();
rankProfileInconsistentA.name("inconsistent");
rankProfileInconsistentA.input(new SchemaInfoConfig.Schema.Rankprofile.Input.Builder().name("query(myTensor1)").type("tensor(a{},b{})"));
schemaA.rankprofile(rankProfileInconsistentA);
+
+ var summaryClass = new SchemaInfoConfig.Schema.Summaryclass.Builder();
+ summaryClass.name("testSummary");
+ var field1 = new SchemaInfoConfig.Schema.Summaryclass.Fields.Builder();
+ field1.name("field1").type("string").dynamic(true);
+ summaryClass.fields(field1);
+ var field2 = new SchemaInfoConfig.Schema.Summaryclass.Fields.Builder();
+ field2.name("field2").type("integer");
+ summaryClass.fields(field2);
+ schemaA.summaryclass(summaryClass);
+
schemaInfoInfoConfig.schema(schemaA);
+ // ----- Schema B
var schemaB = new SchemaInfoConfig.Schema.Builder();
schemaB.name("b");
+
schemaB.rankprofile(rankProfileCommon);
var rankProfileInconsistentB = new SchemaInfoConfig.Schema.Rankprofile.Builder();
rankProfileInconsistentB.name("inconsistent");
@@ -118,8 +138,10 @@ public class SchemaInfoTester {
rankProfileBOnly.name("bOnly");
rankProfileBOnly.input(new SchemaInfoConfig.Schema.Rankprofile.Input.Builder().name("query(myTensor1)").type("tensor(a{},b{})"));
schemaB.rankprofile(rankProfileBOnly);
+
schemaInfoInfoConfig.schema(schemaB);
+ // ----- Info about which schemas are in which clusters
var qrSearchersConfig = new QrSearchersConfig.Builder();
var clusterAB = new QrSearchersConfig.Searchcluster.Builder();
clusterAB.name("ab");
diff --git a/container-search/src/test/java/com/yahoo/vespa/streamingvisitors/VdsStreamingSearcherTestCase.java b/container-search/src/test/java/com/yahoo/vespa/streamingvisitors/VdsStreamingSearcherTestCase.java
index 1f074eeae78..861be9a3ade 100644
--- a/container-search/src/test/java/com/yahoo/vespa/streamingvisitors/VdsStreamingSearcherTestCase.java
+++ b/container-search/src/test/java/com/yahoo/vespa/streamingvisitors/VdsStreamingSearcherTestCase.java
@@ -1,7 +1,6 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.streamingvisitors;
-import com.yahoo.config.subscription.ConfigGetter;
import com.yahoo.document.select.parser.TokenMgrException;
import com.yahoo.messagebus.Trace;
import com.yahoo.messagebus.routing.Route;
@@ -13,6 +12,8 @@ import com.yahoo.prelude.fastsearch.TimeoutException;
import com.yahoo.search.Query;
import com.yahoo.search.Result;
import com.yahoo.search.result.Hit;
+import com.yahoo.search.schema.Schema;
+import com.yahoo.search.schema.SchemaInfo;
import com.yahoo.search.searchchain.Execution;
import com.yahoo.searchlib.aggregation.Grouping;
import com.yahoo.vdslib.DocumentSummary;
@@ -219,12 +220,13 @@ public class VdsStreamingSearcherTestCase {
MockVisitorFactory factory = new MockVisitorFactory();
VdsStreamingSearcher searcher = new VdsStreamingSearcher(factory);
- ConfigGetter<DocumentdbInfoConfig> getter = new ConfigGetter<>(DocumentdbInfoConfig.class);
- DocumentdbInfoConfig config = getter.getConfig("file:src/test/java/com/yahoo/prelude/fastsearch/test/documentdb-info.cfg");
+ var schema = new Schema.Builder("test");
+ schema.add(new com.yahoo.search.schema.DocumentSummary.Builder("default").build());
searcher.init("container.0",
new SummaryParameters("default"),
new ClusterParams("clusterName"),
- config);
+ new DocumentdbInfoConfig.Builder().documentdb(new DocumentdbInfoConfig.Documentdb.Builder().name("test")).build(),
+ new SchemaInfo(List.of(schema.build()), Map.of()));
// Magic query values are used to trigger specific behaviors from mock visitor.
checkError(searcher, "/?query=noselection",