aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/test/java/com/yahoo/searchdefinition
diff options
context:
space:
mode:
Diffstat (limited to 'config-model/src/test/java/com/yahoo/searchdefinition')
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/ArraysTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/ArraysWeightedSetsTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java32
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/CommentTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/DiversityTestCase.java20
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/DocumentGraphValidatorTest.java3
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/DocumentReferenceResolverTest.java11
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/ImportedFieldsEnumeratorTest.java7
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/IncorrectRankingExpressionFileRefTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/IncorrectSummaryTypesTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/IndexSettingsTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/IndexingParsingTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/MultipleSummariesTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/NameFieldCheckTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/OutsideTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/PredicateDataTypeTestCase.java20
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankProfileRegistryTest.java5
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankProfileTestCase.java61
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankPropertiesTestCase.java12
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingConstantTest.java48
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionConstantsTestCase.java36
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionInliningTestCase.java34
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionLoopDetectionTestCase.java48
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionShadowingTestCase.java24
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionValidationTestCase.java28
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/ReservedWordsAsFieldNamesTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/SchemaImporterTestCase.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/SchemaParsingTestCase.java14
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/SchemaTestCase.java20
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/StemmingSettingTestCase.java4
-rwxr-xr-xconfig-model/src/test/java/com/yahoo/searchdefinition/StructTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/SummaryTestCase.java16
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/UrlFieldValidationTestCase.java14
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/AbstractExportingTestCase.java16
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/AttributeListTestCase.java12
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/CasingTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/EmptyRankProfileTestCase.java7
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/ExportingTestCase.java16
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/IdTestCase.java3
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/InheritanceTestCase.java51
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/LiteralBoostTestCase.java13
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/MailTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaInheritanceTestCase.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaOrdererTestCase.java3
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/SimpleInheritTestCase.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/StructInheritanceTestCase.java12
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryMapTestCase.java21
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryTestCase.java42
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/TwoStreamingStructsTestCase.java20
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/TypeConversionTestCase.java3
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/derived/VsmFieldsTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/document/ComplexAttributeFieldUtilsTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFieldsTest.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/AssertSearchBuilder.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/AttributesExactMatchTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/BoldingTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/BoolAttributeValidatorTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/DictionaryTestCase.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/DisallowComplexMapAndWsetKeyTypesTestCase.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/FastAccessValidatorTest.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSchemaFieldsTestCase.java18
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitStructTypesTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummariesTestCase.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFieldsTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsTestCase.java100
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingScriptRewriterTestCase.java9
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingValidationTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/IntegerIndex2AttributeTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolverTestCase.java26
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/NGramTestCase.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/PagedAttributeValidatorTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ParentChildSearchModel.java3
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/PositionTestCase.java14
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankModifierTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankProfileSearchFixture.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankPropertyVariablesTestCase.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionTypeResolverTestCase.java76
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithOnnxTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithTransformerTokensTestCase.java8
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionsTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ReferenceFieldTestCase.java21
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ReservedRankingExpressionFunctionNamesTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/SchemaMustHaveDocumentTest.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryConsistencyTestCase.java4
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSourceTestCase.java10
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorFieldTestCase.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java6
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesTest.java2
-rw-r--r--config-model/src/test/java/com/yahoo/searchdefinition/processing/WeightedSetSummaryToTestCase.java4
89 files changed, 606 insertions, 585 deletions
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/ArraysTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/ArraysTestCase.java
index aaf75f0c852..2ed1ab6892a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/ArraysTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/ArraysTestCase.java
@@ -22,7 +22,7 @@ public class ArraysTestCase extends AbstractSchemaTestCase {
@Test
public void testArrayImporting() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/arrays.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/arrays.sd");
SDField tags = (SDField) schema.getDocument().getField("tags");
assertEquals(DataType.STRING, ((CollectionDataType)tags.getDataType()).getNestedType());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/ArraysWeightedSetsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/ArraysWeightedSetsTestCase.java
index 1dd2c987d90..9c70fcf79f7 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/ArraysWeightedSetsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/ArraysWeightedSetsTestCase.java
@@ -19,7 +19,7 @@ import static org.junit.Assert.assertTrue;
public class ArraysWeightedSetsTestCase extends AbstractSchemaTestCase {
@Test
public void testArrayWeightedSetsImporting() throws java.io.IOException, com.yahoo.searchdefinition.parser.ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/arraysweightedsets.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/arraysweightedsets.sd");
SDField tags = (SDField) schema.getDocument().getField("tags");
assertTrue(tags.getDataType() instanceof ArrayDataType);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java
index e4de0aef622..7b2ed2d7a7f 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/AttributeSettingsTestCase.java
@@ -30,7 +30,7 @@ public class AttributeSettingsTestCase extends AbstractSchemaTestCase {
@Test
public void testAttributeSettings() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/attributesettings.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/attributesettings.sd");
SDField f1=(SDField) schema.getDocument().getField("f1");
assertEquals(1, f1.getAttributes().size());
@@ -91,22 +91,22 @@ public class AttributeSettingsTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatFastAccessCanBeSet() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/attributesettings.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/attributesettings.sd");
SDField field = (SDField) schema.getDocument().getField("fast_access");
assertEquals(1, field.getAttributes().size());
Attribute attr = field.getAttributes().get(field.getName());
assertTrue(attr.isFastAccess());
}
- private Schema getSearch(String sd) throws ParseException {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(sd);
- builder.build();
+ private Schema getSchema(String sd) throws ParseException {
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(sd);
+ builder.build(true);
return builder.getSchema();
}
private Attribute getAttributeF(String sd) throws ParseException {
- Schema schema = getSearch(sd);
+ Schema schema = getSchema(sd);
SDField field = (SDField) schema.getDocument().getField("f");
return field.getAttributes().get(field.getName());
}
@@ -153,14 +153,14 @@ public class AttributeSettingsTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatMutableCanNotbeSetInDocument() throws ParseException {
try {
- getSearch("search test {\n" +
- " document test {\n" +
- " field f type int {\n" +
- " indexing: attribute\n" +
- " attribute: mutable\n" +
- " }\n" +
- " }\n" +
- "}\n");
+ getSchema("search test {\n" +
+ " document test {\n" +
+ " field f type int {\n" +
+ " indexing: attribute\n" +
+ " attribute: mutable\n" +
+ " }\n" +
+ " }\n" +
+ "}\n");
fail();
} catch (IllegalArgumentException e) {
assertEquals("Field 'f' in 'test' can not be marked mutable as it is inside the document clause.", e.getMessage());
@@ -185,7 +185,7 @@ public class AttributeSettingsTestCase extends AbstractSchemaTestCase {
}
private Schema getSearchWithMutables() throws ParseException {
- return getSearch(
+ return getSchema(
"search test {\n" +
" document test { \n" +
" field a type int { \n" +
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/CommentTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/CommentTestCase.java
index 8b7f0885907..3e92c1df9e7 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/CommentTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/CommentTestCase.java
@@ -18,7 +18,7 @@ public class CommentTestCase extends AbstractSchemaTestCase {
@Test
public void testComments() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/comment.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/comment.sd");
SDField field = schema.getConcreteField("a");
assertEquals("{ input a | tokenize normalize stem:\"BEST\" | summary a | index a; }",
field.getIndexingScript().toString());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/DiversityTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/DiversityTestCase.java
index 7c5c5c6fccc..ca7313a5c3f 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/DiversityTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/DiversityTestCase.java
@@ -15,8 +15,8 @@ public class DiversityTestCase {
@Test
public void testDiversity() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type int { \n" +
@@ -42,7 +42,7 @@ public class DiversityTestCase {
" }\n" +
" }\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile.MatchPhaseSettings matchPhase = rankProfileRegistry.get(s, "parent").getMatchPhaseSettings();
RankProfile.DiversitySettings diversity = matchPhase.getDiversity();
@@ -60,10 +60,10 @@ public class DiversityTestCase {
}
@Test
public void requireSingleNumericOrString() throws ParseException {
- SchemaBuilder builder = getSearchBuilder("field b type predicate { indexing: attribute }");
+ ApplicationBuilder builder = getSearchBuilder("field b type predicate { indexing: attribute }");
try {
- builder.build();
+ builder.build(true);
fail("Should throw.");
} catch (IllegalArgumentException e) {
assertEquals(getMessagePrefix() + "must be single value numeric, or enumerated attribute, but it is 'predicate'", e.getMessage());
@@ -72,19 +72,19 @@ public class DiversityTestCase {
@Test
public void requireSingle() throws ParseException {
- SchemaBuilder builder = getSearchBuilder("field b type array<int> { indexing: attribute }");
+ ApplicationBuilder builder = getSearchBuilder("field b type array<int> { indexing: attribute }");
try {
- builder.build();
+ builder.build(true);
fail("Should throw.");
} catch (IllegalArgumentException e) {
assertEquals(getMessagePrefix() + "must be single value numeric, or enumerated attribute, but it is 'Array<int>'", e.getMessage());
}
}
- private SchemaBuilder getSearchBuilder(String diversity) throws ParseException {
+ private ApplicationBuilder getSearchBuilder(String diversity) throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type int { \n" +
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/DocumentGraphValidatorTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/DocumentGraphValidatorTest.java
index fb552f5cfb0..81a44261daf 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/DocumentGraphValidatorTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/DocumentGraphValidatorTest.java
@@ -1,6 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.ReferenceDataType;
import com.yahoo.document.TemporaryStructuredDataType;
import com.yahoo.searchdefinition.document.SDDocumentType;
@@ -143,7 +144,7 @@ public class DocumentGraphValidatorTest {
}
private static Schema createSearchWithName(String name, Schema... parents) {
- Schema campaignSchema = new Schema(name);
+ Schema campaignSchema = new Schema(name, MockApplicationPackage.createEmpty());
SDDocumentType document = new SDDocumentType(name);
campaignSchema.addDocument(document);
document.setDocumentReferences(new DocumentReferences(Collections.emptyMap()));
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/DocumentReferenceResolverTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/DocumentReferenceResolverTest.java
index cc45a2aaec0..66f1850bd10 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/DocumentReferenceResolverTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/DocumentReferenceResolverTest.java
@@ -1,6 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.DataType;
import com.yahoo.document.ReferenceDataType;
import com.yahoo.document.TemporaryStructuredDataType;
@@ -32,7 +33,7 @@ public class DocumentReferenceResolverTest {
@Test
public void reference_from_one_document_to_another_is_resolved() {
// Create bar document with no fields
- Schema barSchema = new Schema(BAR);
+ Schema barSchema = new Schema(BAR, MockApplicationPackage.createEmpty());
SDDocumentType barDocument = new SDDocumentType(BAR, barSchema);
barSchema.addDocument(barDocument);
@@ -41,7 +42,7 @@ public class DocumentReferenceResolverTest {
("bar_ref", ReferenceDataType.createWithInferredId(barDocument.getDocumentType()));
AttributeUtils.addAttributeAspect(fooRefToBarField);
SDField irrelevantField = new SDField("irrelevant_stuff", DataType.INT);
- Schema fooSchema = new Schema(FOO);
+ Schema fooSchema = new Schema(FOO, MockApplicationPackage.createEmpty());
SDDocumentType fooDocument = new SDDocumentType("foo", fooSchema);
fooDocument.addField(fooRefToBarField);
fooDocument.addField(irrelevantField);
@@ -64,7 +65,7 @@ public class DocumentReferenceResolverTest {
SDField fooRefToBarField = new SDField(
"bar_ref", ReferenceDataType.createWithInferredId(TemporaryStructuredDataType.create("bar")));
AttributeUtils.addAttributeAspect(fooRefToBarField);
- Schema fooSchema = new Schema(FOO);
+ Schema fooSchema = new Schema(FOO, MockApplicationPackage.createEmpty());
SDDocumentType fooDocument = new SDDocumentType("foo", fooSchema);
fooDocument.addField(fooRefToBarField);
fooSchema.addDocument(fooDocument);
@@ -80,14 +81,14 @@ public class DocumentReferenceResolverTest {
@Test
public void throws_exception_if_reference_is_not_an_attribute() {
// Create bar document with no fields
- Schema barSchema = new Schema(BAR);
+ Schema barSchema = new Schema(BAR, MockApplicationPackage.createEmpty());
SDDocumentType barDocument = new SDDocumentType("bar", barSchema);
barSchema.addDocument(barDocument);
// Create foo document with document reference to bar
SDField fooRefToBarField = new SDField
("bar_ref", ReferenceDataType.createWithInferredId(barDocument.getDocumentType()));
- Schema fooSchema = new Schema(FOO);
+ Schema fooSchema = new Schema(FOO, MockApplicationPackage.createEmpty());
SDDocumentType fooDocument = new SDDocumentType("foo", fooSchema);
fooDocument.addField(fooRefToBarField);
fooSchema.addDocument(fooDocument);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/ImportedFieldsEnumeratorTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/ImportedFieldsEnumeratorTest.java
index 4057fc469bc..7d2386030da 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/ImportedFieldsEnumeratorTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/ImportedFieldsEnumeratorTest.java
@@ -1,6 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.DataType;
import com.yahoo.document.ReferenceDataType;
import com.yahoo.searchdefinition.document.SDDocumentType;
@@ -19,7 +20,7 @@ public class ImportedFieldsEnumeratorTest {
@Test
public void imported_fields_are_enumerated_and_copied_from_correct_search_instance() {
String PARENT = "parent";
- Schema parentSchema = new Schema(PARENT);
+ Schema parentSchema = new Schema(PARENT, MockApplicationPackage.createEmpty());
SDDocumentType parentDocument = new SDDocumentType(PARENT, parentSchema);
var parentField = new SDField("their_field", DataType.INT);
AttributeUtils.addAttributeAspect(parentField);
@@ -27,7 +28,7 @@ public class ImportedFieldsEnumeratorTest {
parentSchema.addDocument(parentDocument);
String FOO = "foo";
- Schema fooSchema = new Schema(FOO);
+ Schema fooSchema = new Schema(FOO, MockApplicationPackage.createEmpty());
SDField fooRefToParent = new SDField(
"foo_ref", ReferenceDataType.createWithInferredId(parentDocument.getDocumentType()));
AttributeUtils.addAttributeAspect(fooRefToParent);
@@ -38,7 +39,7 @@ public class ImportedFieldsEnumeratorTest {
fooSchema.addDocument(fooDocument);
String BAR = "bar";
- Schema barSchema = new Schema(BAR);
+ Schema barSchema = new Schema(BAR, MockApplicationPackage.createEmpty());
SDField barRefToParent = new SDField(
"bar_ref", ReferenceDataType.createWithInferredId(parentDocument.getDocumentType()));
AttributeUtils.addAttributeAspect(barRefToParent);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectRankingExpressionFileRefTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectRankingExpressionFileRefTestCase.java
index 621e7061203..23be59e38f5 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectRankingExpressionFileRefTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectRankingExpressionFileRefTestCase.java
@@ -21,9 +21,9 @@ public class IncorrectRankingExpressionFileRefTestCase extends AbstractSchemaTes
public void testIncorrectRef() throws IOException, ParseException {
try {
RankProfileRegistry registry = new RankProfileRegistry();
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/incorrectrankingexpressionfileref.sd",
- registry,
- new QueryProfileRegistry());
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/incorrectrankingexpressionfileref.sd",
+ registry,
+ new QueryProfileRegistry());
new DerivedConfiguration(schema, registry); // cause rank profile parsing
fail("parsing should have failed");
} catch (IllegalArgumentException e) {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectSummaryTypesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectSummaryTypesTestCase.java
index 55593ef64e4..d81d07bf6e2 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectSummaryTypesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/IncorrectSummaryTypesTestCase.java
@@ -15,7 +15,7 @@ public class IncorrectSummaryTypesTestCase extends AbstractSchemaTestCase {
@Test
public void testImportingIncorrect() throws ParseException {
try {
- SchemaBuilder.createFromString(
+ ApplicationBuilder.createFromString(
"search incorrectsummarytypes {\n" +
" document incorrectsummarytypes {\n" +
" field somestring type string {\n" +
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/IndexSettingsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/IndexSettingsTestCase.java
index f2e50439306..198f8b6c79e 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/IndexSettingsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/IndexSettingsTestCase.java
@@ -21,7 +21,7 @@ public class IndexSettingsTestCase extends AbstractSchemaTestCase {
@Test
public void testStemmingSettings() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/indexsettings.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/indexsettings.sd");
SDField usingDefault=(SDField) schema.getDocument().getField("usingdefault");
assertEquals(Stemming.SHORTEST,usingDefault.getStemming(schema));
@@ -38,7 +38,7 @@ public class IndexSettingsTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatInterlavedFeaturesAreSetOnExtraField() throws ParseException {
- SchemaBuilder builder = SchemaBuilder.createFromString(joinLines(
+ ApplicationBuilder builder = ApplicationBuilder.createFromString(joinLines(
"search test {",
" document test {",
" field content type string {",
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/IndexingParsingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/IndexingParsingTestCase.java
index 60728ab7d99..8ba7dfdb14f 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/IndexingParsingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/IndexingParsingTestCase.java
@@ -15,13 +15,13 @@ public class IndexingParsingTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatIndexingExpressionsCanBeParsed() throws Exception {
- assertNotNull(SchemaBuilder.buildFromFile("src/test/examples/indexing.sd"));
+ assertNotNull(ApplicationBuilder.buildFromFile("src/test/examples/indexing.sd"));
}
@Test
public void requireThatParseExceptionPositionIsCorrect() throws Exception {
try {
- SchemaBuilder.buildFromFile("src/test/examples/indexing_invalid_expression.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/indexing_invalid_expression.sd");
} catch (ParseException e) {
if (!e.getMessage().contains("at line 5, column 57.")) {
throw e;
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/MultipleSummariesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/MultipleSummariesTestCase.java
index 41321b5c81e..0fcc6e09b02 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/MultipleSummariesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/MultipleSummariesTestCase.java
@@ -14,6 +14,6 @@ import java.io.IOException;
public class MultipleSummariesTestCase extends AbstractSchemaTestCase {
@Test
public void testArrayImporting() throws IOException, ParseException {
- SchemaBuilder.buildFromFile("src/test/examples/multiplesummaries.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/multiplesummaries.sd");
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/NameFieldCheckTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/NameFieldCheckTestCase.java
index fc94bbe8731..1e766b7793d 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/NameFieldCheckTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/NameFieldCheckTestCase.java
@@ -19,7 +19,7 @@ public class NameFieldCheckTestCase extends AbstractSchemaTestCase {
@Test
public void testNameField() {
try {
- SchemaBuilder.createFromString(
+ ApplicationBuilder.createFromString(
"search simple {\n" +
" document name-check {\n" +
" field title type string {\n" +
@@ -40,7 +40,7 @@ public class NameFieldCheckTestCase extends AbstractSchemaTestCase {
@Test
public void testDuplicateNamesInSearchDifferentType() {
try {
- SchemaBuilder.createFromString(
+ ApplicationBuilder.createFromString(
"search duplicatenamesinsearch {\n" +
" document {\n" +
" field grpphotoids64 type string { }\n" +
@@ -60,7 +60,7 @@ public class NameFieldCheckTestCase extends AbstractSchemaTestCase {
@Test
public void testDuplicateNamesInDoc() {
try {
- SchemaBuilder.createFromString(
+ ApplicationBuilder.createFromString(
"search duplicatenamesindoc {\n" +
" document {\n" +
" field foo type int {\n" +
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/OutsideTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/OutsideTestCase.java
index 5663473481b..6563fb8d3f1 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/OutsideTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/OutsideTestCase.java
@@ -17,7 +17,7 @@ public class OutsideTestCase extends AbstractSchemaTestCase {
@Test
public void testOutsideIndex() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/outsidedoc.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/outsidedoc.sd");
Index defaultIndex= schema.getIndex("default");
assertTrue(defaultIndex.isPrefix());
@@ -26,7 +26,7 @@ public class OutsideTestCase extends AbstractSchemaTestCase {
@Test
public void testOutsideSummary() throws IOException, ParseException {
- SchemaBuilder.buildFromFile("src/test/examples/outsidesummary.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/outsidesummary.sd");
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/PredicateDataTypeTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/PredicateDataTypeTestCase.java
index 456a236f293..2b49f3d67a6 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/PredicateDataTypeTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/PredicateDataTypeTestCase.java
@@ -68,7 +68,7 @@ public class PredicateDataTypeTestCase {
lowerBoundParameter(lowerBound) +
upperBoundParameter(upperBound))));
- SchemaBuilder sb = SchemaBuilder.createFromString(sd);
+ ApplicationBuilder sb = ApplicationBuilder.createFromString(sd);
for (ImmutableSDField field : sb.getSchema().allConcreteFields()) {
if (field.getDataType() == DataType.PREDICATE) {
for (Index index : field.getIndices().values()) {
@@ -95,7 +95,7 @@ public class PredicateDataTypeTestCase {
"lower-bound: -100000000000000000L\n" + // +'L'
upperBoundParameter(upperBound))));
- SchemaBuilder sb = SchemaBuilder.createFromString(sd);
+ ApplicationBuilder sb = ApplicationBuilder.createFromString(sd);
for (ImmutableSDField field : sb.getSchema().allConcreteFields()) {
if (field.getDataType() == DataType.PREDICATE) {
for (Index index : field.getIndices().values()) {
@@ -113,7 +113,7 @@ public class PredicateDataTypeTestCase {
predicateFieldSd(
attributeFieldSd(
arityParameter(2))));
- SchemaBuilder sb = SchemaBuilder.createFromString(sd);
+ ApplicationBuilder sb = ApplicationBuilder.createFromString(sd);
for (ImmutableSDField field : sb.getSchema().allConcreteFields()) {
if (field.getDataType() == DataType.PREDICATE) {
for (Index index : field.getIndices().values()) {
@@ -131,7 +131,7 @@ public class PredicateDataTypeTestCase {
exception.expect(IllegalArgumentException.class);
exception.expectMessage("Missing arity value in predicate field.");
- SchemaBuilder.createFromString(sd);
+ ApplicationBuilder.createFromString(sd);
fail();
}
@@ -141,7 +141,7 @@ public class PredicateDataTypeTestCase {
exception.expect(IllegalArgumentException.class);
exception.expectMessage("For schema 'p', field 'pf': Use 'attribute' instead of 'index'. This will require a refeed if you have upgraded.");
- SchemaBuilder.createFromString(sd);
+ ApplicationBuilder.createFromString(sd);
}
@Test
@@ -150,7 +150,7 @@ public class PredicateDataTypeTestCase {
exception.expect(IllegalArgumentException.class);
exception.expectMessage("For schema 'p', field 'pf': Use 'attribute' instead of 'index'. This will require a refeed if you have upgraded.");
- SchemaBuilder.createFromString(sd);
+ ApplicationBuilder.createFromString(sd);
}
@@ -160,7 +160,7 @@ public class PredicateDataTypeTestCase {
exception.expect(IllegalArgumentException.class);
exception.expectMessage("Invalid arity value in predicate field, must be greater than 1.");
- SchemaBuilder.createFromString(sd);
+ ApplicationBuilder.createFromString(sd);
}
@Test
@@ -169,7 +169,7 @@ public class PredicateDataTypeTestCase {
exception.expect(IllegalArgumentException.class);
exception.expectMessage("Arity parameter is used only for predicate type fields.");
- SchemaBuilder.createFromString(sd);
+ ApplicationBuilder.createFromString(sd);
}
@Test
@@ -181,7 +181,7 @@ public class PredicateDataTypeTestCase {
exception.expect(IllegalArgumentException.class);
exception.expectMessage("Parameters lower-bound and upper-bound are used only for predicate type fields.");
- SchemaBuilder.createFromString(sd);
+ ApplicationBuilder.createFromString(sd);
}
@Test
@@ -193,7 +193,7 @@ public class PredicateDataTypeTestCase {
exception.expect(IllegalArgumentException.class);
exception.expectMessage("Collections of predicates are not allowed.");
- SchemaBuilder.createFromString(sd);
+ ApplicationBuilder.createFromString(sd);
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileRegistryTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileRegistryTest.java
index d2486395340..d07f4513c3c 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileRegistryTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileRegistryTest.java
@@ -2,6 +2,7 @@
package com.yahoo.searchdefinition;
import com.yahoo.config.model.application.provider.FilesApplicationPackage;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.config.model.test.TestDriver;
import com.yahoo.config.model.test.TestRoot;
import com.yahoo.searchlib.rankingexpression.ExpressionFunction;
@@ -33,7 +34,7 @@ public class RankProfileRegistryTest {
@Test(expected = IllegalArgumentException.class)
public void testRankProfileDuplicateNameIsIllegal() {
- Schema schema = new Schema("foo");
+ Schema schema = new Schema("foo", MockApplicationPackage.createEmpty());
RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
RankProfile barRankProfile = new RankProfile("bar", schema, rankProfileRegistry, schema.rankingConstants());
rankProfileRegistry.add(barRankProfile);
@@ -42,7 +43,7 @@ public class RankProfileRegistryTest {
@Test
public void testRankProfileDuplicateNameLegalForOverridableRankProfiles() {
- Schema schema = new Schema("foo");
+ Schema schema = new Schema("foo", MockApplicationPackage.createEmpty());
RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
for (String rankProfileName : RankProfileRegistry.overridableRankProfileNames) {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileTestCase.java
index 3fa129eae39..c88e8149e46 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankProfileTestCase.java
@@ -6,6 +6,7 @@ import com.yahoo.component.ComponentId;
import com.yahoo.config.model.api.ModelContext;
import com.yahoo.config.model.application.provider.MockFileRegistry;
import com.yahoo.config.model.deploy.TestProperties;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.DataType;
import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.search.query.profile.types.FieldDescription;
@@ -43,7 +44,7 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
@Test
public void testRankProfileInheritance() {
- Schema schema = new Schema("test");
+ Schema schema = new Schema("test", MockApplicationPackage.createEmpty());
RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType document = new SDDocumentType("test");
SDField a = document.addField("a", DataType.STRING);
@@ -69,8 +70,8 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
public void requireThatIllegalInheritanceIsChecked() throws ParseException {
try {
RankProfileRegistry registry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(registry, setupQueryProfileTypes());
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(registry, setupQueryProfileTypes());
+ builder.addSchema(joinLines(
"search test {",
" document test { } ",
" rank-profile p1 inherits notexist {}",
@@ -78,7 +79,7 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
builder.build(true);
fail();
} catch (IllegalArgumentException e) {
- assertEquals("rank-profile 'p1' inherits 'notexist', but it does not exist anywhere in the inheritance of search 'test'.", e.getMessage());
+ assertEquals("rank-profile 'p1' inherits 'notexist', but this is not found in schema 'test'", e.getMessage());
}
}
@@ -86,8 +87,8 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
public void requireThatSelfInheritanceIsIllegal() throws ParseException {
try {
RankProfileRegistry registry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(registry, setupQueryProfileTypes());
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(registry, setupQueryProfileTypes());
+ builder.addSchema(joinLines(
"schema test {",
" document test { } ",
" rank-profile self inherits self {}",
@@ -102,13 +103,13 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatSelfInheritanceIsLegalWhenOverloading() throws ParseException {
RankProfileRegistry registry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(registry, setupQueryProfileTypes());
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(registry, setupQueryProfileTypes());
+ builder.addSchema(joinLines(
"schema base {",
" document base { } ",
" rank-profile self inherits default {}",
"}"));
- builder.importString(joinLines(
+ builder.addSchema(joinLines(
"schema test {",
" document test inherits base { } ",
" rank-profile self inherits self {}",
@@ -119,8 +120,8 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatSidewaysInheritanceIsImpossible() throws ParseException {
RankProfileRegistry registry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(registry, setupQueryProfileTypes());
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(registry, setupQueryProfileTypes());
+ builder.addSchema(joinLines(
"schema child1 {",
" document child1 {",
" field field1 type int {",
@@ -141,7 +142,7 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
" }",
" }",
"}\n"));
- builder.importString(joinLines(
+ builder.addSchema(joinLines(
"schema child2 {",
" document child2 {",
" field field1 type int {",
@@ -165,15 +166,15 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
builder.build(true);
fail("Sideways inheritance should have been enforced");
} catch (IllegalArgumentException e) {
- assertEquals("rank-profile 'child' inherits 'parent', but it does not exist anywhere in the inheritance of search 'child1'.", e.getMessage());
+ assertEquals("rank-profile 'child' inherits 'parent', but this is not found in schema 'child1'", e.getMessage());
}
}
@Test
public void requireThatDefaultCanAlwaysBeInherited() throws ParseException {
RankProfileRegistry registry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(registry, setupQueryProfileTypes());
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(registry, setupQueryProfileTypes());
+ builder.addSchema(joinLines(
"schema test {",
" document test { } ",
" rank-profile default inherits default {}",
@@ -185,8 +186,8 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
public void requireThatCyclicInheritanceIsIllegal() throws ParseException {
try {
RankProfileRegistry registry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(registry, setupQueryProfileTypes());
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(registry, setupQueryProfileTypes());
+ builder.addSchema(joinLines(
"search test {",
" document test { } ",
" rank-profile a inherits b {}",
@@ -204,8 +205,8 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
public void requireThatRankProfilesCanInheritNotYetSeenProfiles() throws ParseException
{
RankProfileRegistry registry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(registry, setupQueryProfileTypes());
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(registry, setupQueryProfileTypes());
+ builder.addSchema(joinLines(
"search test {",
" document test { } ",
" rank-profile p1 inherits not_yet_defined {}",
@@ -246,9 +247,9 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
private void verifyTermwiseLimitAndSomeMoreIncludingInheritance(ModelContext.Properties deployProperties, String sd, Double termwiseLimit) throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(sd);
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(sd);
+ builder.build(true);
Schema schema = builder.getSchema();
AttributeFields attributeFields = new AttributeFields(schema);
verifyRankProfile(rankProfileRegistry.get(schema, "parent"), attributeFields, deployProperties, termwiseLimit);
@@ -279,8 +280,8 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatConfigIsDerivedForAttributeTypeSettings() throws ParseException {
RankProfileRegistry registry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(registry);
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(registry);
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field a type tensor(x[10]) { indexing: attribute }",
@@ -290,7 +291,7 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
" rank-profile p1 {}",
" rank-profile p2 {}",
"}"));
- builder.build();
+ builder.build(true);
Schema schema = builder.getSchema();
assertEquals(4, registry.all().size());
@@ -303,14 +304,14 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatDenseDimensionsMustBeBound() throws ParseException {
try {
- SchemaBuilder builder = new SchemaBuilder(new RankProfileRegistry());
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(new RankProfileRegistry());
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field a type tensor(x[]) { indexing: attribute }",
" }",
"}"));
- builder.build();
+ builder.build(true);
}
catch (IllegalArgumentException e) {
assertEquals("Illegal type in field a type tensor(x[]): Dense tensor dimensions must have a size",
@@ -332,8 +333,8 @@ public class RankProfileTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatConfigIsDerivedForQueryFeatureTypeSettings() throws ParseException {
RankProfileRegistry registry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(registry, setupQueryProfileTypes());
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(registry, setupQueryProfileTypes());
+ builder.addSchema(joinLines(
"search test {",
" document test { } ",
" rank-profile p1 {}",
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankPropertiesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankPropertiesTestCase.java
index d6065e74af5..6de890549c1 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankPropertiesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankPropertiesTestCase.java
@@ -23,8 +23,8 @@ public class RankPropertiesTestCase extends AbstractSchemaTestCase {
@Test
public void testRankPropertyInheritance() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(joinLines(
"search test {",
" document test {",
" field a type string { ",
@@ -48,7 +48,7 @@ public class RankPropertiesTestCase extends AbstractSchemaTestCase {
" }",
" }",
"}"));
- builder.build();
+ builder.build(true);
Schema schema = builder.getSchema();
AttributeFields attributeFields = new AttributeFields(schema);
@@ -80,8 +80,8 @@ public class RankPropertiesTestCase extends AbstractSchemaTestCase {
@Test
public void testRankProfileMutate() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(joinLines(
"search test {",
" document test {",
" field a type int { ",
@@ -128,7 +128,7 @@ public class RankPropertiesTestCase extends AbstractSchemaTestCase {
" }",
" }",
"}"));
- builder.build();
+ builder.build(true);
Schema schema = builder.getSchema();
RankProfile a = rankProfileRegistry.get(schema, "a");
List<RankProfile.MutateOperation> operations = a.getMutateOperations();
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingConstantTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingConstantTest.java
index 1925b7e77b9..6eb74dede62 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingConstantTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingConstantTest.java
@@ -28,8 +28,8 @@ public class RankingConstantTest {
final String TENSOR_FILE = "path/my-tensor-file.json";
final String TENSOR_TYPE = "tensor(x{})";
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder schemaBuilder = new SchemaBuilder(rankProfileRegistry);
- schemaBuilder.importString(joinLines(
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder(rankProfileRegistry);
+ schemaBuilder.addSchema(joinLines(
"search test {",
" document test { }",
" rank-profile my_rank_profile {",
@@ -43,7 +43,7 @@ public class RankingConstantTest {
" }",
"}"
));
- schemaBuilder.build();
+ schemaBuilder.build(true);
Schema schema = schemaBuilder.getSchema();
Iterator<RankingConstant> constantIterator = schema.rankingConstants().asMap().values().iterator();
@@ -59,10 +59,10 @@ public class RankingConstantTest {
@Test
public void tensor_constant_must_have_a_type() throws Exception {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder schemaBuilder = new SchemaBuilder(rankProfileRegistry);
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder(rankProfileRegistry);
thrown.expect(IllegalArgumentException.class);
thrown.expectMessage("must have a type");
- schemaBuilder.importString(joinLines(
+ schemaBuilder.addSchema(joinLines(
"search test {",
" document test { }",
" constant foo {",
@@ -75,10 +75,10 @@ public class RankingConstantTest {
@Test
public void tensor_constant_must_have_a_file() throws Exception {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder schemaBuilder = new SchemaBuilder(rankProfileRegistry);
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder(rankProfileRegistry);
thrown.expect(IllegalArgumentException.class);
thrown.expectMessage("must have a file");
- schemaBuilder.importString(joinLines(
+ schemaBuilder.addSchema(joinLines(
"search test {",
" document test { }",
" constant foo {",
@@ -91,8 +91,8 @@ public class RankingConstantTest {
@Test
public void constant_file_does_not_need_path_or_ending() throws Exception {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder schemaBuilder = new SchemaBuilder(rankProfileRegistry);
- schemaBuilder.importString(joinLines(
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder(rankProfileRegistry);
+ schemaBuilder.addSchema(joinLines(
"search test {",
" document test { }",
" constant foo {",
@@ -101,7 +101,7 @@ public class RankingConstantTest {
" }",
"}"
));
- schemaBuilder.build();
+ schemaBuilder.build(true);
Schema schema = schemaBuilder.getSchema();
RankingConstant constant = schema.rankingConstants().asMap().values().iterator().next();
assertEquals("simplename", constant.getFileName());
@@ -110,8 +110,8 @@ public class RankingConstantTest {
@Test
public void constant_uri_is_allowed() throws Exception {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder schemaBuilder = new SchemaBuilder(rankProfileRegistry);
- schemaBuilder.importString(joinLines(
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder(rankProfileRegistry);
+ schemaBuilder.addSchema(joinLines(
"search test {",
" document test { }",
" constant foo {",
@@ -120,7 +120,7 @@ public class RankingConstantTest {
" }",
"}"
));
- schemaBuilder.build();
+ schemaBuilder.build(true);
Schema schema = schemaBuilder.getSchema();
RankingConstant constant = schema.rankingConstants().asMap().values().iterator().next();
assertEquals(RankingConstant.PathType.URI, constant.getPathType());
@@ -130,8 +130,8 @@ public class RankingConstantTest {
@Test
public void constant_https_uri_is_allowed() throws Exception {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder schemaBuilder = new SchemaBuilder(rankProfileRegistry);
- schemaBuilder.importString(joinLines(
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder(rankProfileRegistry);
+ schemaBuilder.addSchema(joinLines(
"search test {",
" document test { }",
" constant foo {",
@@ -140,7 +140,7 @@ public class RankingConstantTest {
" }",
"}"
));
- schemaBuilder.build();
+ schemaBuilder.build(true);
Schema schema = schemaBuilder.getSchema();
RankingConstant constant = schema.rankingConstants().asMap().values().iterator().next();
assertEquals(RankingConstant.PathType.URI, constant.getPathType());
@@ -150,8 +150,8 @@ public class RankingConstantTest {
@Test
public void constant_uri_with_port_is_allowed() throws Exception {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder schemaBuilder = new SchemaBuilder(rankProfileRegistry);
- schemaBuilder.importString(joinLines(
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder(rankProfileRegistry);
+ schemaBuilder.addSchema(joinLines(
"search test {",
" document test { }",
" constant foo {",
@@ -160,7 +160,7 @@ public class RankingConstantTest {
" }",
"}"
));
- schemaBuilder.build();
+ schemaBuilder.build(true);
Schema schema = schemaBuilder.getSchema();
RankingConstant constant = schema.rankingConstants().asMap().values().iterator().next();
assertEquals(RankingConstant.PathType.URI, constant.getPathType());
@@ -170,8 +170,8 @@ public class RankingConstantTest {
@Test
public void constant_uri_no_dual_slashes_is_allowed() throws Exception {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder schemaBuilder = new SchemaBuilder(rankProfileRegistry);
- schemaBuilder.importString(joinLines(
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder(rankProfileRegistry);
+ schemaBuilder.addSchema(joinLines(
"search test {",
" document test { }",
" constant foo {",
@@ -180,7 +180,7 @@ public class RankingConstantTest {
" }",
"}"
));
- schemaBuilder.build();
+ schemaBuilder.build(true);
Schema schema = schemaBuilder.getSchema();
RankingConstant constant = schema.rankingConstants().asMap().values().iterator().next();
assertEquals(RankingConstant.PathType.URI, constant.getPathType());
@@ -190,12 +190,12 @@ public class RankingConstantTest {
@Test
public void constant_uri_only_supports_http_and_https() {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder schemaBuilder = new SchemaBuilder(rankProfileRegistry);
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder(rankProfileRegistry);
String expectedMessage = "Encountered \" <IDENTIFIER> \"ftp\"\" at line 5, column 10.\n\n" +
"Was expecting:\n\n" +
"<URI_PATH> ...";
try {
- schemaBuilder.importString(joinLines(
+ schemaBuilder.addSchema(joinLines(
"search test {",
" document test { }",
" constant foo {",
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionConstantsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionConstantsTestCase.java
index 87b406c39fa..4646ff2f394 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionConstantsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionConstantsTestCase.java
@@ -25,8 +25,8 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
public void testConstants() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
QueryProfileRegistry queryProfileRegistry = new QueryProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -66,7 +66,7 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile parent = rankProfileRegistry.get(s, "parent").compile(queryProfileRegistry, new ImportedMlModels());
assertEquals("0.0", parent.getFirstPhaseRanking().getRoot().toString());
@@ -91,8 +91,8 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
@Test
public void testNameCollision() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -110,7 +110,7 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
try {
rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
@@ -125,8 +125,8 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
@Test
public void testNegativeLiteralArgument() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -141,7 +141,7 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile profile = rankProfileRegistry.get(s, "test");
assertEquals("safeLog(popShareSlowDecaySignal,-9.21034037)", profile.getFunctions().get("POP_SLOW_SCORE").function().getBody().getRoot().toString());
@@ -150,8 +150,8 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
@Test
public void testNegativeConstantArgument() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -169,7 +169,7 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile profile = rankProfileRegistry.get(s, "test");
assertEquals("safeLog(popShareSlowDecaySignal,myValue)", profile.getFunctions().get("POP_SLOW_SCORE").function().getBody().getRoot().toString());
@@ -180,8 +180,8 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
@Test
public void testConstantDivisorInFunction() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" }\n" +
@@ -193,7 +193,7 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile profile = rankProfileRegistry.get(s, "test");
assertEquals("k1 + (k2 + k3) / 1.0E8",
@@ -203,8 +203,8 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
@Test
public void test3() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field rating_yelp type int {" +
@@ -219,7 +219,7 @@ public class RankingExpressionConstantsTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile profile = rankProfileRegistry.get(s, "test");
assertEquals("0.5 + 50 * (attribute(rating_yelp) - 3)",
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionInliningTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionInliningTestCase.java
index 0598fee538a..94d25deb16a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionInliningTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionInliningTestCase.java
@@ -28,8 +28,8 @@ public class RankingExpressionInliningTestCase extends AbstractSchemaTestCase {
@Test
public void testFunctionInliningPreserveArithmeticOrdering() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type double { \n" +
@@ -65,7 +65,7 @@ public class RankingExpressionInliningTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile parent = rankProfileRegistry.get(s, "parent").compile(new QueryProfileRegistry(), new ImportedMlModels());
@@ -79,8 +79,8 @@ public class RankingExpressionInliningTestCase extends AbstractSchemaTestCase {
@Test
public void testConstants() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -125,7 +125,7 @@ public class RankingExpressionInliningTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile parent = rankProfileRegistry.get(s, "parent").compile(new QueryProfileRegistry(), new ImportedMlModels());
@@ -150,8 +150,8 @@ public class RankingExpressionInliningTestCase extends AbstractSchemaTestCase {
@Test
public void testNonTopLevelInlining() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type double { \n" +
@@ -181,7 +181,7 @@ public class RankingExpressionInliningTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile test = rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
@@ -194,13 +194,13 @@ public class RankingExpressionInliningTestCase extends AbstractSchemaTestCase {
public void testFunctionInliningWithReplacement() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
MockDeployLogger deployLogger = new MockDeployLogger();
- SchemaBuilder builder = new SchemaBuilder(MockApplicationPackage.createEmpty(),
- new MockFileRegistry(),
- deployLogger,
- new TestProperties(),
- rankProfileRegistry,
- new QueryProfileRegistry());
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(MockApplicationPackage.createEmpty(),
+ new MockFileRegistry(),
+ deployLogger,
+ new TestProperties(),
+ rankProfileRegistry,
+ new QueryProfileRegistry());
+ builder.addSchema(
"search test {\n" +
" document test { }\n" +
" rank-profile test {\n" +
@@ -215,7 +215,7 @@ public class RankingExpressionInliningTestCase extends AbstractSchemaTestCase {
" }\n" +
" }\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile test = rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
assertEquals("foo(2)", test.getFirstPhaseRanking().getRoot().toString());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionLoopDetectionTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionLoopDetectionTestCase.java
index 689b75690ae..ff8a9df4076 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionLoopDetectionTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionLoopDetectionTestCase.java
@@ -16,8 +16,8 @@ public class RankingExpressionLoopDetectionTestCase {
@Test
public void testSelfLoop() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -36,7 +36,7 @@ public class RankingExpressionLoopDetectionTestCase {
"\n" +
"}\n");
try {
- builder.build();
+ builder.build(true);
fail("Excepted exception");
}
catch (IllegalArgumentException e) {
@@ -48,8 +48,8 @@ public class RankingExpressionLoopDetectionTestCase {
@Test
public void testNestedLoop() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -71,7 +71,7 @@ public class RankingExpressionLoopDetectionTestCase {
"\n" +
"}\n");
try {
- builder.build();
+ builder.build(true);
fail("Excepted exception");
}
catch (IllegalArgumentException e) {
@@ -83,8 +83,8 @@ public class RankingExpressionLoopDetectionTestCase {
@Test
public void testSelfArgumentLoop() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -106,7 +106,7 @@ public class RankingExpressionLoopDetectionTestCase {
"\n" +
"}\n");
try {
- builder.build();
+ builder.build(true);
fail("Excepted exception");
}
catch (IllegalArgumentException e) {
@@ -118,8 +118,8 @@ public class RankingExpressionLoopDetectionTestCase {
@Test
public void testNoLoopWithSameLocalArgument() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -140,14 +140,14 @@ public class RankingExpressionLoopDetectionTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
}
@Test
public void testNoLoopWithMultipleInvocations() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -168,14 +168,14 @@ public class RankingExpressionLoopDetectionTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
}
@Test
public void testNoLoopWithBoundIdentifiers() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" }\n" +
@@ -191,14 +191,14 @@ public class RankingExpressionLoopDetectionTestCase {
" }\n" +
" }\n" +
"}\n");
- builder.build();
+ builder.build(true);
}
@Test
public void testNoLoopWithTheSameNestedIdentifierWhichIsUnbound() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" }\n" +
@@ -214,14 +214,14 @@ public class RankingExpressionLoopDetectionTestCase {
" }\n" +
" }\n" +
"}\n");
- builder.build();
+ builder.build(true);
}
@Test
public void testNoLoopWithTheSameAlternatingNestedIdentifierWhichIsUnbound() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" }\n" +
@@ -240,7 +240,7 @@ public class RankingExpressionLoopDetectionTestCase {
" }\n" +
" }\n" +
"}\n");
- builder.build();
+ builder.build(true);
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionShadowingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionShadowingTestCase.java
index ff146fedd88..8354eb59416 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionShadowingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionShadowingTestCase.java
@@ -26,8 +26,8 @@ public class RankingExpressionShadowingTestCase extends AbstractSchemaTestCase {
@Test
public void testBasicFunctionShadowing() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -45,7 +45,7 @@ public class RankingExpressionShadowingTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile test = rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
List<Pair<String, String>> testRankProperties = createRawRankProfile(test, new QueryProfileRegistry(), s).configProperties();
@@ -61,8 +61,8 @@ public class RankingExpressionShadowingTestCase extends AbstractSchemaTestCase {
@Test
public void testMultiLevelFunctionShadowing() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -86,7 +86,7 @@ public class RankingExpressionShadowingTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile test = rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
List<Pair<String, String>> testRankProperties = createRawRankProfile(test, new QueryProfileRegistry(), s).configProperties();
@@ -113,8 +113,8 @@ public class RankingExpressionShadowingTestCase extends AbstractSchemaTestCase {
@Test
public void testFunctionShadowingArguments() throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -132,7 +132,7 @@ public class RankingExpressionShadowingTestCase extends AbstractSchemaTestCase {
" }\n" +
"\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile test = rankProfileRegistry.get(s, "test").compile(new QueryProfileRegistry(), new ImportedMlModels());
List<Pair<String, String>> testRankProperties = createRawRankProfile(test, new QueryProfileRegistry(), s).configProperties();
@@ -153,8 +153,8 @@ public class RankingExpressionShadowingTestCase extends AbstractSchemaTestCase {
// Note: the type assigned to query profile and constant tensors here is not the correct type
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
QueryProfileRegistry queryProfiles = queryProfileWith("query(q)", "tensor(input[1])");
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry, queryProfiles);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry, queryProfiles);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
@@ -193,7 +193,7 @@ public class RankingExpressionShadowingTestCase extends AbstractSchemaTestCase {
" file: ignored.json\n" +
" }\n" +
"}\n");
- builder.build();
+ builder.build(true);
Schema s = builder.getSchema();
RankProfile test = rankProfileRegistry.get(s, "test").compile(queryProfiles, new ImportedMlModels());
List<Pair<String, String>> testRankProperties = createRawRankProfile(test, queryProfiles, s).configProperties();
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionValidationTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionValidationTestCase.java
index 299724ea39e..ee3b4ab25e0 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionValidationTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/RankingExpressionValidationTestCase.java
@@ -32,20 +32,20 @@ public class RankingExpressionValidationTestCase extends AbstractSchemaTestCase
}
private Schema importWithExpression(String expression, RankProfileRegistry registry) throws ParseException {
- SchemaBuilder builder = new SchemaBuilder(registry);
- builder.importString("search test {" +
- " document test { " +
- " field a type string { " +
- " indexing: index " +
- " }" +
- " }" +
- " rank-profile default {" +
- " first-phase {" +
- " expression: " + expression +
- " }" +
- " }" +
- "}");
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder(registry);
+ builder.addSchema("search test {" +
+ " document test { " +
+ " field a type string { " +
+ " indexing: index " +
+ " }" +
+ " }" +
+ " rank-profile default {" +
+ " first-phase {" +
+ " expression: " + expression +
+ " }" +
+ " }" +
+ "}");
+ builder.build(true);
return builder.getSchema();
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/ReservedWordsAsFieldNamesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/ReservedWordsAsFieldNamesTestCase.java
index a6f76897c0b..a8aaee83938 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/ReservedWordsAsFieldNamesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/ReservedWordsAsFieldNamesTestCase.java
@@ -15,7 +15,7 @@ public class ReservedWordsAsFieldNamesTestCase extends AbstractSchemaTestCase {
@Test
public void testIt() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/reserved_words_as_field_names.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/reserved_words_as_field_names.sd");
assertNotNull(schema.getDocument().getField("inline"));
assertNotNull(schema.getDocument().getField("constants"));
assertNotNull(schema.getDocument().getField("reference"));
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/SchemaImporterTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/SchemaImporterTestCase.java
index c2816336076..8a9300a83eb 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/SchemaImporterTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/SchemaImporterTestCase.java
@@ -36,9 +36,9 @@ public class SchemaImporterTestCase extends AbstractSchemaTestCase {
@SuppressWarnings("deprecation")
public void testSimpleImporting() throws IOException, ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder sb = new SchemaBuilder(rankProfileRegistry, new QueryProfileRegistry());
- sb.importFile("src/test/examples/simple.sd");
- sb.build();
+ ApplicationBuilder sb = new ApplicationBuilder(rankProfileRegistry, new QueryProfileRegistry());
+ sb.addSchemaFile("src/test/examples/simple.sd");
+ sb.build(true);
Schema schema = sb.getSchema();
assertEquals("simple", schema.getName());
assertTrue(schema.hasDocument());
@@ -170,7 +170,7 @@ public class SchemaImporterTestCase extends AbstractSchemaTestCase {
public void testDocumentImporting() throws IOException, ParseException {
try {
// Having two documents in one sd-file is illegal.
- SchemaBuilder.buildFromFile("src/test/examples/documents.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/documents.sd");
fail();
} catch (IllegalArgumentException e) {
}
@@ -178,7 +178,7 @@ public class SchemaImporterTestCase extends AbstractSchemaTestCase {
@Test
public void testIdImporting() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/strange.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/strange.sd");
SDField idecidemyide=(SDField) schema.getDocument().getField("idecidemyide");
assertEquals(5,idecidemyide.getId());
SDField sodoi=(SDField) schema.getDocument().getField("sodoi");
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/SchemaParsingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/SchemaParsingTestCase.java
index dfe60c5871e..c6757938c51 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/SchemaParsingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/SchemaParsingTestCase.java
@@ -19,13 +19,13 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatIndexingExpressionsCanBeParsed() throws Exception {
- assertNotNull(SchemaBuilder.buildFromFile("src/test/examples/simple.sd"));
+ assertNotNull(ApplicationBuilder.buildFromFile("src/test/examples/simple.sd"));
}
@Test
public void requireThatParseExceptionPositionIsCorrect() throws Exception {
try {
- SchemaBuilder.buildFromFile("src/test/examples/invalid_sd_construct.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/invalid_sd_construct.sd");
} catch (ParseException e) {
if ( ! e.getMessage().contains("at line 5, column 36.")) {
throw e;
@@ -36,7 +36,7 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatParserHandlesLexicalError() throws Exception {
try {
- SchemaBuilder.buildFromFile("src/test/examples/invalid_sd_lexical_error.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/invalid_sd_lexical_error.sd");
} catch (ParseException e) {
if (!e.getMessage().contains("at line 7, column 27.")) {
throw e;
@@ -47,7 +47,7 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase {
@Test
public void requireErrorWhenJunkAfterSearchBlock() throws IOException, ParseException {
try {
- SchemaBuilder.buildFromFile("src/test/examples/invalid_sd_junk_at_end.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/invalid_sd_junk_at_end.sd");
fail("Illegal junk at end of SD passed");
} catch (ParseException e) {
if (!e.getMessage().contains("at line 10, column 1")) {
@@ -59,7 +59,7 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase {
@Test
public void requireErrorWhenMissingClosingSearchBracket() throws IOException, ParseException {
try {
- SchemaBuilder.buildFromFile("src/test/examples/invalid_sd_no_closing_bracket.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/invalid_sd_no_closing_bracket.sd");
fail("SD without closing bracket passed");
} catch (ParseException e) {
if (!e.getMessage().contains("Encountered \"<EOF>\" at line 8, column 1")) {
@@ -71,7 +71,7 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase {
@Test
public void illegalSearchDefinitionName() throws IOException, ParseException {
try {
- SchemaBuilder.buildFromFile("src/test/examples/invalid-name.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/invalid-name.sd");
fail("Name with dash passed");
} catch (ParseException e) {
if ( ! e.getMessage().contains("invalid-name")) {
@@ -83,7 +83,7 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase {
// TODO: Remove in Vespa 8
@Test
public void requireThatParserHandlesHeadAndBody() throws IOException, ParseException {
- assertNotNull(SchemaBuilder.buildFromFile("src/test/examples/header_body.sd"));
+ assertNotNull(ApplicationBuilder.buildFromFile("src/test/examples/header_body.sd"));
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/SchemaTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/SchemaTestCase.java
index d906685d502..d012f330328 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/SchemaTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/SchemaTestCase.java
@@ -31,7 +31,7 @@ public class SchemaTestCase {
" }" +
"}");
DeployLoggerStub logger = new DeployLoggerStub();
- SchemaBuilder.createFromStrings(logger, schema);
+ ApplicationBuilder.createFromStrings(logger, schema);
assertEquals("schema 'test' inherits 'nonesuch', but this schema does not exist",
logger.entries.get(0).message);
fail("Expected failure");
@@ -60,7 +60,7 @@ public class SchemaTestCase {
" }" +
" }" +
"}");
- SchemaBuilder.createFromStrings(new DeployLoggerStub(), parent, child);
+ ApplicationBuilder.createFromStrings(new DeployLoggerStub(), parent, child);
}
catch (IllegalArgumentException e) {
assertEquals("schema 'child' inherits 'parent', " +
@@ -166,12 +166,12 @@ public class SchemaTestCase {
" import field parentschema_ref.name as child2_imported {}" +
"}");
- SchemaBuilder builder = new SchemaBuilder(new DeployLoggerStub());
+ ApplicationBuilder builder = new ApplicationBuilder(new DeployLoggerStub());
builder.processorsToSkip().add(OnnxModelTypeResolver.class); // Avoid discovering the Onnx model referenced does not exist
builder.processorsToSkip().add(ImportedFieldsResolver.class); // Avoid discovering the document reference leads nowhere
- builder.importString(parentLines);
- builder.importString(child1Lines);
- builder.importString(child2Lines);
+ builder.addSchema(parentLines);
+ builder.addSchema(child1Lines);
+ builder.addSchema(child2Lines);
builder.build(true);
var application = builder.application();
@@ -307,12 +307,12 @@ public class SchemaTestCase {
" }" +
"}");
- SchemaBuilder builder = new SchemaBuilder(new DeployLoggerStub());
+ ApplicationBuilder builder = new ApplicationBuilder(new DeployLoggerStub());
builder.processorsToSkip().add(OnnxModelTypeResolver.class); // Avoid discovering the Onnx model referenced does not exist
builder.processorsToSkip().add(ImportedFieldsResolver.class); // Avoid discovering the document reference leads nowhere
- builder.importString(parentLines);
- builder.importString(childLines);
- builder.importString(grandchildLines);
+ builder.addSchema(parentLines);
+ builder.addSchema(childLines);
+ builder.addSchema(grandchildLines);
builder.build(true);
var application = builder.application();
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/StemmingSettingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/StemmingSettingTestCase.java
index 75dcd6bc209..aec258f2df0 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/StemmingSettingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/StemmingSettingTestCase.java
@@ -20,7 +20,7 @@ public class StemmingSettingTestCase extends AbstractSchemaTestCase {
@Test
public void testStemmingSettings() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/stemmingsetting.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/stemmingsetting.sd");
SDField artist = (SDField) schema.getDocument().getField("artist");
assertEquals(Stemming.SHORTEST, artist.getStemming(schema));
@@ -43,7 +43,7 @@ public class StemmingSettingTestCase extends AbstractSchemaTestCase {
@Test
public void requireThatStemmingIsDefaultBest() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/stemmingdefault.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/stemmingdefault.sd");
assertNull(schema.getConcreteField("my_str").getStemming());
assertEquals(Stemming.BEST, schema.getConcreteField("my_str").getStemming(schema));
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/StructTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/StructTestCase.java
index 34093bf72ef..c27dd9dfdfb 100755
--- a/config-model/src/test/java/com/yahoo/searchdefinition/StructTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/StructTestCase.java
@@ -25,7 +25,7 @@ public class StructTestCase extends AbstractSchemaTestCase {
@Test
public void testBadStruct() throws IOException {
try {
- SchemaBuilder.buildFromFile("src/test/examples/badstruct.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/badstruct.sd");
fail("Should throw exception.");
} catch (ParseException expected) {
// success
@@ -46,7 +46,7 @@ public class StructTestCase extends AbstractSchemaTestCase {
*/
@Test(expected = IllegalArgumentException.class)
public void testStructOutsideDocumentIllegal() throws IOException, ParseException {
- SchemaBuilder.buildFromFile("src/test/examples/structoutsideofdocument.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/structoutsideofdocument.sd");
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/SummaryTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/SummaryTestCase.java
index 7c8e806d768..086e3485962 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/SummaryTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/SummaryTestCase.java
@@ -39,7 +39,7 @@ public class SummaryTestCase {
" }",
"}");
DeployLoggerStub logger = new DeployLoggerStub();
- SchemaBuilder.createFromString(sd, logger);
+ ApplicationBuilder.createFromString(sd, logger);
assertTrue(logger.entries.isEmpty());
}
@@ -61,7 +61,7 @@ public class SummaryTestCase {
" }",
"}");
DeployLoggerStub logger = new DeployLoggerStub();
- SchemaBuilder.createFromString(sd, logger);
+ ApplicationBuilder.createFromString(sd, logger);
assertEquals(1, logger.entries.size());
assertEquals(Level.WARNING, logger.entries.get(0).level);
assertEquals("summary field 'foo2' in document summary 'foobar' references source field 'ondisk', " +
@@ -89,7 +89,7 @@ public class SummaryTestCase {
" }",
"}");
DeployLoggerStub logger = new DeployLoggerStub();
- SchemaBuilder.createFromString(sd, logger);
+ ApplicationBuilder.createFromString(sd, logger);
assertTrue(logger.entries.isEmpty());
}
@@ -120,7 +120,7 @@ public class SummaryTestCase {
" }",
"}");
DeployLoggerStub logger = new DeployLoggerStub();
- SchemaBuilder.createFromString(sd, logger);
+ ApplicationBuilder.createFromString(sd, logger);
assertTrue(logger.entries.isEmpty());
}
@@ -156,7 +156,7 @@ public class SummaryTestCase {
" }",
"}");
var logger = new DeployLoggerStub();
- var search = SchemaBuilder.createFromString(sd, logger).getSchema();
+ var search = ApplicationBuilder.createFromString(sd, logger).getSchema();
assertEquals(List.of(), logger.entries);
var titleField = "title";
@@ -208,7 +208,7 @@ public class SummaryTestCase {
"}");
var logger = new DeployLoggerStub();
try {
- SchemaBuilder.createFromString(sd, logger);
+ ApplicationBuilder.createFromString(sd, logger);
fail("Expected exception");
} catch (IllegalArgumentException e) {
assertEquals("For schema 'music', summary class 'title2', summary field 'title': Can not use " +
@@ -228,7 +228,7 @@ public class SummaryTestCase {
" }" +
"}");
DeployLoggerStub logger = new DeployLoggerStub();
- SchemaBuilder.createFromStrings(logger, schema);
+ ApplicationBuilder.createFromStrings(logger, schema);
assertEquals("document summary 'test_summary' inherits nonesuch but this is not present in schema 'test'",
logger.entries.get(0).message);
// fail("Expected failure");
@@ -264,7 +264,7 @@ public class SummaryTestCase {
" }" +
"}");
DeployLoggerStub logger = new DeployLoggerStub();
- SchemaBuilder.createFromStrings(logger, parent, child);
+ ApplicationBuilder.createFromStrings(logger, parent, child);
logger.entries.forEach(e -> System.out.println(e));
//assertTrue(logger.entries.isEmpty());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/UrlFieldValidationTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/UrlFieldValidationTestCase.java
index 9fdeb9ece1d..f2d78796553 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/UrlFieldValidationTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/UrlFieldValidationTestCase.java
@@ -15,14 +15,14 @@ public class UrlFieldValidationTestCase {
@Test
public void requireThatInheritedRiseFieldsStillCanBeInConflictButDontThrowException() throws ParseException {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString("search test {" +
- " document test { " +
- " field a type uri { indexing: attribute | summary }" +
- " }" +
- "}");
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema("search test {" +
+ " document test { " +
+ " field a type uri { indexing: attribute | summary }" +
+ " }" +
+ "}");
try {
- builder.build();
+ builder.build(true);
fail("Should have caused an exception");
// success
} catch (IllegalArgumentException e) {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/AbstractExportingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/AbstractExportingTestCase.java
index 8b54455d176..a88ad929e80 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/AbstractExportingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/AbstractExportingTestCase.java
@@ -8,7 +8,7 @@ import com.yahoo.config.model.deploy.TestProperties;
import com.yahoo.document.config.DocumenttypesConfig;
import com.yahoo.document.config.DocumentmanagerConfig;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
import ai.vespa.rankingexpression.importer.configmodelview.ImportedMlModels;
@@ -38,14 +38,14 @@ public abstract class AbstractExportingTestCase extends AbstractSchemaTestCase {
toDir.mkdirs();
deleteContent(toDir);
- SchemaBuilder builder = SchemaBuilder.createFromDirectory(searchDefRoot + dirName + "/", new MockFileRegistry(), logger, properties);
+ ApplicationBuilder builder = ApplicationBuilder.createFromDirectory(searchDefRoot + dirName + "/", new MockFileRegistry(), logger, properties);
return derive(dirName, searchDefinitionName, properties, builder, logger);
}
private DerivedConfiguration derive(String dirName,
String searchDefinitionName,
TestProperties properties,
- SchemaBuilder builder,
+ ApplicationBuilder builder,
DeployLogger logger) throws IOException {
DerivedConfiguration config = new DerivedConfiguration(builder.getSchema(searchDefinitionName),
logger,
@@ -57,14 +57,14 @@ public abstract class AbstractExportingTestCase extends AbstractSchemaTestCase {
return export(dirName, builder, config);
}
- DerivedConfiguration derive(String dirName, SchemaBuilder builder, Schema schema) throws IOException {
+ DerivedConfiguration derive(String dirName, ApplicationBuilder builder, Schema schema) throws IOException {
DerivedConfiguration config = new DerivedConfiguration(schema,
builder.getRankProfileRegistry(),
builder.getQueryProfileRegistry());
return export(dirName, builder, config);
}
- private DerivedConfiguration export(String name, SchemaBuilder builder, DerivedConfiguration config) throws IOException {
+ private DerivedConfiguration export(String name, ApplicationBuilder builder, DerivedConfiguration config) throws IOException {
String path = exportConfig(name, config);
DerivedConfiguration.exportDocuments(new DocumentManager().useV8DocManagerCfg(useV8DocManagerCfg())
.produce(builder.getModel(), new DocumentmanagerConfig.Builder()), path);
@@ -114,14 +114,14 @@ public abstract class AbstractExportingTestCase extends AbstractSchemaTestCase {
* Asserts config is correctly derived given a builder.
* This will fail if the builder contains multiple search definitions.
*/
- protected DerivedConfiguration assertCorrectDeriving(SchemaBuilder builder, String dirName, DeployLogger logger) throws IOException {
- builder.build();
+ protected DerivedConfiguration assertCorrectDeriving(ApplicationBuilder builder, String dirName, DeployLogger logger) throws IOException {
+ builder.build(true);
DerivedConfiguration derived = derive(dirName, null, new TestProperties(), builder, logger);
assertCorrectConfigFiles(dirName);
return derived;
}
- protected DerivedConfiguration assertCorrectDeriving(SchemaBuilder builder, Schema schema, String name) throws IOException {
+ protected DerivedConfiguration assertCorrectDeriving(ApplicationBuilder builder, Schema schema, String name) throws IOException {
DerivedConfiguration derived = derive(name, builder, schema);
assertCorrectConfigFiles(name);
return derived;
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/AttributeListTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/AttributeListTestCase.java
index 58a4350b73b..a272ab14dad 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/AttributeListTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/AttributeListTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.derived;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -25,7 +25,7 @@ public class AttributeListTestCase extends AbstractSchemaTestCase {
@Test
public void testDeriving() throws IOException, ParseException {
// Test attribute importing
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/simple.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/simple.sd");
// Test attribute deriving
AttributeFields attributeFields = new AttributeFields(schema);
@@ -71,7 +71,7 @@ public class AttributeListTestCase extends AbstractSchemaTestCase {
@Test
public void fields_in_array_of_struct_are_derived_into_array_attributes() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/derived/array_of_struct_attribute/test.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/derived/array_of_struct_attribute/test.sd");
Iterator<Attribute> attributes = new AttributeFields(schema).attributeIterator();
assertAttribute("elem_array.name", Attribute.Type.STRING, Attribute.CollectionType.ARRAY, true, attributes.next());
@@ -81,7 +81,7 @@ public class AttributeListTestCase extends AbstractSchemaTestCase {
@Test
public void fields_in_map_of_struct_are_derived_into_array_attributes() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
Iterator<Attribute> attributes = new AttributeFields(schema).attributeIterator();
assertAttribute("str_elem_map.key", Attribute.Type.STRING, Attribute.CollectionType.ARRAY, true, attributes.next());
@@ -101,7 +101,7 @@ public class AttributeListTestCase extends AbstractSchemaTestCase {
@Test
public void only_zcurve_attribute_is_derived_from_array_of_position_field() throws ParseException {
- Schema schema = SchemaBuilder.createFromString(
+ Schema schema = ApplicationBuilder.createFromString(
joinLines("search test {",
" document test {",
" field pos_array type array<position> {",
@@ -117,7 +117,7 @@ public class AttributeListTestCase extends AbstractSchemaTestCase {
@Test
public void fields_in_map_of_primitive_are_derived_into_array_attributes() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/derived/map_attribute/test.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/derived/map_attribute/test.sd");
Iterator<Attribute> attributes = new AttributeFields(schema).attributeIterator();
assertAttribute("str_map.key", Attribute.Type.STRING, Attribute.CollectionType.ARRAY, true, attributes.next());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/CasingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/CasingTestCase.java
index 06d72bb6972..ee9a9eac02c 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/CasingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/CasingTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.derived;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -20,7 +20,7 @@ public class CasingTestCase extends AbstractSchemaTestCase {
@Test
public void testCasing() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/casing.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/casing.sd");
assertEquals(schema.getIndex("color").getName(), "color");
assertEquals(schema.getIndex("Foo").getName(), "Foo");
assertEquals(schema.getIndex("Price").getName(), "Price");
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/EmptyRankProfileTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/EmptyRankProfileTestCase.java
index 604082fb52e..237e6c8c992 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/EmptyRankProfileTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/EmptyRankProfileTestCase.java
@@ -1,11 +1,12 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.DataType;
import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
@@ -20,7 +21,7 @@ public class EmptyRankProfileTestCase extends AbstractSchemaTestCase {
@Test
public void testDeriving() {
- Schema schema = new Schema("test");
+ Schema schema = new Schema("test", MockApplicationPackage.createEmpty());
RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType doc = new SDDocumentType("test");
schema.addDocument(doc);
@@ -30,7 +31,7 @@ public class EmptyRankProfileTestCase extends AbstractSchemaTestCase {
doc.addField(field);
doc.addField(new SDField("c", DataType.STRING));
- schema = SchemaBuilder.buildFromRawSchema(schema, rankProfileRegistry, new QueryProfileRegistry());
+ schema = ApplicationBuilder.buildFromRawSchema(schema, rankProfileRegistry, new QueryProfileRegistry());
new DerivedConfiguration(schema, rankProfileRegistry);
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/ExportingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/ExportingTestCase.java
index fda3e6c16c3..ddb627216b7 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/ExportingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/ExportingTestCase.java
@@ -1,8 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
-import com.yahoo.config.model.deploy.TestProperties;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -145,10 +144,10 @@ public class ExportingTestCase extends AbstractExportingTestCase {
@Test
public void testTensor2() throws IOException, ParseException {
String dir = "src/test/derived/tensor2/";
- SchemaBuilder builder = new SchemaBuilder();
- builder.importFile(dir + "first.sd");
- builder.importFile(dir + "second.sd");
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchemaFile(dir + "first.sd");
+ builder.addSchemaFile(dir + "second.sd");
+ builder.build(true);
derive("tensor2", builder, builder.getSchema("second"));
assertCorrectConfigFiles("tensor2");
}
@@ -170,4 +169,9 @@ public class ExportingTestCase extends AbstractExportingTestCase {
assertEquals(0, logger.warnings.size());
}
+ @Test
+ public void testRankProfileModularity() throws IOException, ParseException {
+ assertCorrectDeriving("rankprofilemodularity");
+ }
+
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/IdTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/IdTestCase.java
index b262ef92e1a..440f067dd00 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/IdTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/IdTestCase.java
@@ -2,6 +2,7 @@
package com.yahoo.searchdefinition.derived;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
@@ -25,7 +26,7 @@ public class IdTestCase extends AbstractExportingTestCase {
@Test
public void testExplicitUpperCaseIdField() {
- Schema schema = new Schema("test");
+ Schema schema = new Schema("test", MockApplicationPackage.createEmpty());
SDDocumentType document = new SDDocumentType("test");
schema.addDocument(document);
SDField uri = new SDField("URI", DataType.URI);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/InheritanceTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/InheritanceTestCase.java
index f9bd28037eb..bcf68387294 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/InheritanceTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/InheritanceTestCase.java
@@ -1,11 +1,12 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.DataType;
import com.yahoo.document.config.DocumentmanagerConfig;
import com.yahoo.searchdefinition.Index;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -40,10 +41,10 @@ public class InheritanceTestCase extends AbstractExportingTestCase {
@Test
public void requireThatIndexedStructFieldCanBeInherited() throws IOException, ParseException {
String dir = "src/test/derived/inheritstruct/";
- SchemaBuilder builder = new SchemaBuilder();
- builder.importFile(dir + "parent.sd");
- builder.importFile(dir + "child.sd");
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchemaFile(dir + "parent.sd");
+ builder.addSchemaFile(dir + "child.sd");
+ builder.build(true);
derive("inheritstruct", builder, builder.getSchema("child"));
assertCorrectConfigFiles("inheritstruct");
}
@@ -63,12 +64,12 @@ public class InheritanceTestCase extends AbstractExportingTestCase {
List<String> files = Arrays.asList("grandparent.sd", "mother.sd", "father.sd", "child.sd");
File outDir = tmpDir.newFolder("out");
for (int startIdx = 0; startIdx < files.size(); ++startIdx) {
- SchemaBuilder builder = new SchemaBuilder();
+ ApplicationBuilder builder = new ApplicationBuilder();
for (int fileIdx = startIdx; fileIdx < startIdx + files.size(); ++fileIdx) {
String fileName = files.get(fileIdx % files.size());
- builder.importFile(dir + fileName);
+ builder.addSchemaFile(dir + fileName);
}
- builder.build();
+ builder.build(true);
DocumentmanagerConfig.Builder b = new DocumentmanagerConfig.Builder();
DerivedConfiguration.exportDocuments(new DocumentManager().produce(builder.getModel(), b), outDir.getPath());
DocumentmanagerConfig dc = b.build();
@@ -110,10 +111,10 @@ public class InheritanceTestCase extends AbstractExportingTestCase {
@Test
public void requireThatStructTypesAreInheritedFromParent() throws IOException, ParseException {
String dir = "src/test/derived/inheritfromparent/";
- SchemaBuilder builder = new SchemaBuilder();
- builder.importFile(dir + "parent.sd");
- builder.importFile(dir + "child.sd");
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchemaFile(dir + "parent.sd");
+ builder.addSchemaFile(dir + "child.sd");
+ builder.build(true);
derive("inheritfromparent", builder, builder.getSchema("child"));
assertCorrectConfigFiles("inheritfromparent");
}
@@ -121,11 +122,11 @@ public class InheritanceTestCase extends AbstractExportingTestCase {
@Test
public void requireThatStructTypesAreInheritedFromGrandParent() throws IOException, ParseException {
String dir = "src/test/derived/inheritfromgrandparent/";
- SchemaBuilder builder = new SchemaBuilder();
- builder.importFile(dir + "grandparent.sd");
- builder.importFile(dir + "parent.sd");
- builder.importFile(dir + "child.sd");
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchemaFile(dir + "grandparent.sd");
+ builder.addSchemaFile(dir + "parent.sd");
+ builder.addSchemaFile(dir + "child.sd");
+ builder.build(true);
derive("inheritfromgrandparent", builder, builder.getSchema("child"));
assertCorrectConfigFiles("inheritfromgrandparent");
}
@@ -133,12 +134,12 @@ public class InheritanceTestCase extends AbstractExportingTestCase {
@Test
public void testInheritance() throws IOException, ParseException {
String dir = "src/test/derived/inheritance/";
- SchemaBuilder builder = new SchemaBuilder();
- builder.importFile(dir + "grandparent.sd");
- builder.importFile(dir + "father.sd");
- builder.importFile(dir + "mother.sd");
- builder.importFile(dir + "child.sd");
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchemaFile(dir + "grandparent.sd");
+ builder.addSchemaFile(dir + "father.sd");
+ builder.addSchemaFile(dir + "mother.sd");
+ builder.addSchemaFile(dir + "child.sd");
+ builder.build(true);
derive("inheritance", builder, builder.getSchema("child"));
assertCorrectConfigFiles("inheritance");
}
@@ -146,7 +147,7 @@ public class InheritanceTestCase extends AbstractExportingTestCase {
@Test
public void testIndexSettingInheritance() {
SDDocumentType parent = new SDDocumentType("parent");
- Schema parentSchema = new Schema("parent");
+ Schema parentSchema = new Schema("parent", MockApplicationPackage.createEmpty());
parentSchema.addDocument(parent);
SDField prefixed = parent.addField("prefixed", DataType.STRING);
prefixed.parseIndexingScript("{ index }");
@@ -154,7 +155,7 @@ public class InheritanceTestCase extends AbstractExportingTestCase {
SDDocumentType child = new SDDocumentType("child");
child.inherit(parent);
- Schema childSchema = new Schema("child");
+ Schema childSchema = new Schema("child", MockApplicationPackage.createEmpty());
childSchema.addDocument(child);
prefixed = (SDField)child.getField("prefixed");
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/LiteralBoostTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/LiteralBoostTestCase.java
index f8f1bf9e4f1..1e7dd3a2405 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/LiteralBoostTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/LiteralBoostTestCase.java
@@ -2,12 +2,13 @@
package com.yahoo.searchdefinition.derived;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.DataType;
import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.processing.Processing;
@@ -30,7 +31,7 @@ public class LiteralBoostTestCase extends AbstractExportingTestCase {
*/
@Test
public void testLiteralBoost() {
- Schema schema = new Schema("literalboost");
+ Schema schema = new Schema("literalboost", MockApplicationPackage.createEmpty());
RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType document = new SDDocumentType("literalboost");
schema.addDocument(document);
@@ -63,7 +64,7 @@ public class LiteralBoostTestCase extends AbstractExportingTestCase {
*/
@Test
public void testNonDefaultRankLiteralBoost() {
- Schema schema = new Schema("literalboost");
+ Schema schema = new Schema("literalboost", MockApplicationPackage.createEmpty());
RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType document = new SDDocumentType("literalboost");
schema.addDocument(document);
@@ -73,7 +74,7 @@ public class LiteralBoostTestCase extends AbstractExportingTestCase {
rankProfileRegistry.add(other);
other.addRankSetting(new RankProfile.RankSetting("a", RankProfile.RankSetting.Type.LITERALBOOST, 333));
- schema = SchemaBuilder.buildFromRawSchema(schema, rankProfileRegistry, new QueryProfileRegistry());
+ schema = ApplicationBuilder.buildFromRawSchema(schema, rankProfileRegistry, new QueryProfileRegistry());
DerivedConfiguration derived = new DerivedConfiguration(schema, rankProfileRegistry);
// Check il script addition
@@ -89,7 +90,7 @@ public class LiteralBoostTestCase extends AbstractExportingTestCase {
/** Tests literal boosts in two fields going to the same index */
@Test
public void testTwoLiteralBoostFields() {
- Schema schema = new Schema("msb");
+ Schema schema = new Schema("msb", MockApplicationPackage.createEmpty());
RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType document = new SDDocumentType("msb");
schema.addDocument(document);
@@ -100,7 +101,7 @@ public class LiteralBoostTestCase extends AbstractExportingTestCase {
field2.parseIndexingScript("{ summary | index }");
field2.setLiteralBoost(20);
- schema = SchemaBuilder.buildFromRawSchema(schema, rankProfileRegistry, new QueryProfileRegistry());
+ schema = ApplicationBuilder.buildFromRawSchema(schema, rankProfileRegistry, new QueryProfileRegistry());
new DerivedConfiguration(schema, rankProfileRegistry);
assertIndexing(Arrays.asList("clear_state | guard { input title | tokenize normalize stem:\"BEST\" | summary title | index title; }",
"clear_state | guard { input body | tokenize normalize stem:\"BEST\" | summary body | index body; }",
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/MailTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/MailTestCase.java
index 9ad6dfbb972..53bf55fc73f 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/MailTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/MailTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
import java.io.IOException;
@@ -16,8 +16,8 @@ public class MailTestCase extends AbstractExportingTestCase {
@Test
public void testMail() throws IOException, ParseException {
String dir = "src/test/derived/mail/";
- SchemaBuilder sb = new SchemaBuilder();
- sb.importFile(dir + "mail.sd");
+ ApplicationBuilder sb = new ApplicationBuilder();
+ sb.addSchemaFile(dir + "mail.sd");
assertCorrectDeriving(sb, dir, new TestableDeployLogger());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaInheritanceTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaInheritanceTestCase.java
index c7297c41c62..a458036a03f 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaInheritanceTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaInheritanceTestCase.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.config.model.application.provider.MockFileRegistry;
import com.yahoo.config.model.deploy.TestProperties;
import com.yahoo.io.IOUtils;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -19,10 +19,10 @@ public class SchemaInheritanceTestCase extends AbstractExportingTestCase {
@Test
public void testIt() throws IOException, ParseException {
try {
- SchemaBuilder builder = SchemaBuilder.createFromDirectory("src/test/derived/schemainheritance/",
- new MockFileRegistry(),
- new TestableDeployLogger(),
- new TestProperties());
+ ApplicationBuilder builder = ApplicationBuilder.createFromDirectory("src/test/derived/schemainheritance/",
+ new MockFileRegistry(),
+ new TestableDeployLogger(),
+ new TestProperties());
derive("schemainheritance", builder, builder.getSchema("child"));
assertCorrectConfigFiles("schemainheritance");
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaOrdererTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaOrdererTestCase.java
index b3f2fb62ac2..34d33a00d9e 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaOrdererTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SchemaOrdererTestCase.java
@@ -1,6 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.ReferenceDataType;
import com.yahoo.document.TemporaryStructuredDataType;
import com.yahoo.searchdefinition.DocumentReference;
@@ -62,7 +63,7 @@ public class SchemaOrdererTestCase extends AbstractSchemaTestCase {
}
private static Schema createSchema(String name, Map<String, Schema> schemas) {
- Schema schema = new Schema(name);
+ Schema schema = new Schema(name, MockApplicationPackage.createEmpty());
SDDocumentType document = new SDDocumentType(name);
document.setDocumentReferences(new DocumentReferences(emptyMap()));
schema.addDocument(document);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SimpleInheritTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SimpleInheritTestCase.java
index c0f2b6887d2..d89e5f2c957 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SimpleInheritTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SimpleInheritTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.derived;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -19,10 +19,10 @@ public class SimpleInheritTestCase extends AbstractExportingTestCase {
String name = "emptychild";
final String expectedResultsDirName = "src/test/derived/" + name + "/";
- SchemaBuilder builder = new SchemaBuilder();
- builder.importFile(expectedResultsDirName + "parent.sd");
- builder.importFile(expectedResultsDirName + "child.sd");
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchemaFile(expectedResultsDirName + "parent.sd");
+ builder.addSchemaFile(expectedResultsDirName + "child.sd");
+ builder.build(true);
Schema schema = builder.getSchema("child");
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/StructInheritanceTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/StructInheritanceTestCase.java
index b2c2a54ce5e..1f6c70c9383 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/StructInheritanceTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/StructInheritanceTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.derived;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Rule;
@@ -31,8 +31,8 @@ public class StructInheritanceTestCase extends AbstractExportingTestCase {
@Test
public void requireThatStructCanInherit() throws IOException, ParseException {
String dir = "src/test/derived/structinheritance/";
- SchemaBuilder builder = new SchemaBuilder();
- builder.importFile(dir + "simple.sd");
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchemaFile(dir + "simple.sd");
builder.build(false);
derive("structinheritance", builder, builder.getSchema("simple"));
assertCorrectConfigFiles("structinheritance");
@@ -43,9 +43,9 @@ public class StructInheritanceTestCase extends AbstractExportingTestCase {
exceptionRule.expect(IllegalArgumentException.class);
exceptionRule.expectMessage("cannot inherit from base and redeclare field name");
String dir = "src/test/derived/structinheritance/";
- SchemaBuilder builder = new SchemaBuilder();
- builder.importFile(dir + "bad.sd");
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchemaFile(dir + "bad.sd");
+ builder.build(true);
derive("structinheritance", builder, builder.getSchema("bad"));
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryMapTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryMapTestCase.java
index 4994cffb92a..c0fa3e8311f 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryMapTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryMapTestCase.java
@@ -1,6 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.searchdefinition.*;
import com.yahoo.vespa.config.search.SummarymapConfig;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
@@ -29,7 +30,7 @@ import static org.junit.Assert.assertTrue;
public class SummaryMapTestCase extends AbstractSchemaTestCase {
@Test
public void testDeriving() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/simple.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/simple.sd");
SummaryMap summaryMap=new SummaryMap(schema);
Iterator transforms=summaryMap.resultTransformIterator();
@@ -73,7 +74,7 @@ public class SummaryMapTestCase extends AbstractSchemaTestCase {
}
@Test
public void testPositionDeriving() {
- Schema schema = new Schema("store");
+ Schema schema = new Schema("store", MockApplicationPackage.createEmpty());
SDDocumentType document = new SDDocumentType("store");
schema.addDocument(document);
String fieldName = "location";
@@ -147,7 +148,7 @@ public class SummaryMapTestCase extends AbstractSchemaTestCase {
@Test
public void testFailOnSummaryFieldSourceCollision() {
try {
- SchemaBuilder.buildFromFile("src/test/examples/summaryfieldcollision.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/summaryfieldcollision.sd");
} catch (Exception e) {
assertTrue(e.getMessage().matches(".*equally named field.*"));
}
@@ -189,13 +190,13 @@ public class SummaryMapTestCase extends AbstractSchemaTestCase {
}
private Schema buildSearch(String field) throws ParseException {
- var builder = new SchemaBuilder(new RankProfileRegistry());
- builder.importString(joinLines("search test {",
- " document test {",
- field,
- " }",
- "}"));
- builder.build();
+ var builder = new ApplicationBuilder(new RankProfileRegistry());
+ builder.addSchema(joinLines("search test {",
+ " document test {",
+ field,
+ " }",
+ "}"));
+ builder.build(true);
return builder.getSchema();
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryTestCase.java
index c996fb0c1b9..9a36ef90cd7 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/SummaryTestCase.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.derived;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
import com.yahoo.vespa.config.search.SummaryConfig;
@@ -35,7 +35,7 @@ public class SummaryTestCase extends AbstractSchemaTestCase {
" }",
" }",
"}");
- Schema schema = SchemaBuilder.createFromString(sd).getSchema();
+ Schema schema = ApplicationBuilder.createFromString(sd).getSchema();
SummaryClass summary = new SummaryClass(schema, schema.getSummary("default"), new BaseDeployLogger());
assertEquals(SummaryClassField.Type.RAW, summary.getField("raw_field").getType());
}
@@ -50,14 +50,14 @@ public class SummaryTestCase extends AbstractSchemaTestCase {
" }",
" }",
"}");
- Schema schema = SchemaBuilder.createFromString(sd).getSchema();
+ Schema schema = ApplicationBuilder.createFromString(sd).getSchema();
SummaryClass summary = new SummaryClass(schema, schema.getSummary("default"), new BaseDeployLogger());
assertEquals(SummaryClassField.Type.DATA, summary.getField("raw_field").getType());
}
@Test
public void testDeriving() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/simple.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/simple.sd");
SummaryClass summary = new SummaryClass(schema, schema.getSummary("default"), new BaseDeployLogger());
assertEquals("default", summary.getName());
@@ -134,22 +134,22 @@ public class SummaryTestCase extends AbstractSchemaTestCase {
}
private static Schema buildCampaignAdModel() throws ParseException {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString("search campaign { document campaign {} }");
- builder.importString(joinLines("search ad {",
- " document ad {",
- " field campaign_ref type reference<campaign> {",
- " indexing: summary | attribute",
- " }",
- " field other_campaign_ref type reference<campaign> {",
- " indexing: summary | attribute",
- " }",
- " }",
- " document-summary my_summary {",
- " summary other_campaign_ref type reference<campaign> {}",
- " }",
- "}"));
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema("search campaign { document campaign {} }");
+ builder.addSchema(joinLines("search ad {",
+ " document ad {",
+ " field campaign_ref type reference<campaign> {",
+ " indexing: summary | attribute",
+ " }",
+ " field other_campaign_ref type reference<campaign> {",
+ " indexing: summary | attribute",
+ " }",
+ " }",
+ " document-summary my_summary {",
+ " summary other_campaign_ref type reference<campaign> {}",
+ " }",
+ "}"));
+ builder.build(true);
return builder.getSchema("ad");
}
@@ -168,7 +168,7 @@ public class SummaryTestCase extends AbstractSchemaTestCase {
" summary foo type string {}",
" }",
"}");
- var search = SchemaBuilder.createFromString(sd).getSchema();
+ var search = ApplicationBuilder.createFromString(sd).getSchema();
assertOmitSummaryFeatures(true, search, "bar");
assertOmitSummaryFeatures(false, search, "baz");
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/TwoStreamingStructsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/TwoStreamingStructsTestCase.java
index c3a78bab441..4e629fcb4d8 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/TwoStreamingStructsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/TwoStreamingStructsTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.derived;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -13,20 +13,22 @@ import java.io.IOException;
* @author arnej27959
*/
public class TwoStreamingStructsTestCase extends AbstractExportingTestCase {
+
@Test
public void testTwoStreamingStructsExporting() throws ParseException, IOException {
String root = "src/test/derived/twostreamingstructs";
- SchemaBuilder builder = new SchemaBuilder();
- builder.importFile(root + "/streamingstruct.sd");
- builder.importFile(root + "/whatever.sd");
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchemaFile(root + "/streamingstruct.sd");
+ builder.addSchemaFile(root + "/whatever.sd");
+ builder.build(true);
assertCorrectDeriving(builder, builder.getSchema("streamingstruct"), root);
- builder = new SchemaBuilder();
- builder.importFile(root + "/streamingstruct.sd");
- builder.importFile(root + "/whatever.sd");
- builder.build();
+ builder = new ApplicationBuilder();
+ builder.addSchemaFile(root + "/streamingstruct.sd");
+ builder.addSchemaFile(root + "/whatever.sd");
+ builder.build(true);
assertCorrectDeriving(builder, builder.getSchema("streamingstruct"), root);
}
+
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/TypeConversionTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/TypeConversionTestCase.java
index 13289d72884..dbb32e61144 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/TypeConversionTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/TypeConversionTestCase.java
@@ -2,6 +2,7 @@
package com.yahoo.searchdefinition.derived;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
@@ -25,7 +26,7 @@ public class TypeConversionTestCase extends AbstractSchemaTestCase {
/** Tests that exact-string stuff is not spilled over to the default index */
@Test
public void testExactStringToStringTypeConversion() {
- Schema schema = new Schema("test");
+ Schema schema = new Schema("test", MockApplicationPackage.createEmpty());
RankProfileRegistry rankProfileRegistry = RankProfileRegistry.createRankProfileRegistryWithBuiltinRankProfiles(schema);
SDDocumentType document = new SDDocumentType("test");
schema.addDocument(document);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/VsmFieldsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/VsmFieldsTestCase.java
index 138992477c0..5ab5a8057e8 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/VsmFieldsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/VsmFieldsTestCase.java
@@ -24,7 +24,7 @@ public class VsmFieldsTestCase {
@SuppressWarnings("deprecation")
@Test
public void reference_type_field_is_unsearchable() {
- Schema schema = new Schema("test", new Application(MockApplicationPackage.createEmpty()), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
+ Schema schema = new Schema("test", MockApplicationPackage.createEmpty(), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
schema.addDocument(new SDDocumentType("test"));
SDField refField = new TemporarySDField("ref_field", ReferenceDataType.createWithInferredId(TemporaryStructuredDataType.create("parent_type")));
refField.parseIndexingScript("{ summary }");
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/document/ComplexAttributeFieldUtilsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/document/ComplexAttributeFieldUtilsTestCase.java
index 481a4db11ec..99692e70041 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/document/ComplexAttributeFieldUtilsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/document/ComplexAttributeFieldUtilsTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.document;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -17,7 +17,7 @@ public class ComplexAttributeFieldUtilsTestCase {
private final ImmutableSDField field;
FixtureBase(String fieldName, String sdContent) throws ParseException {
- Schema schema = SchemaBuilder.createFromString(sdContent).getSchema();
+ Schema schema = ApplicationBuilder.createFromString(sdContent).getSchema();
field = schema.getConcreteField(fieldName);
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFieldsTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFieldsTest.java
index 715b7b803e2..9ca97f4dbc7 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFieldsTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AddAttributeTransformToSummaryOfImportedFieldsTest.java
@@ -48,7 +48,7 @@ public class AddAttributeTransformToSummaryOfImportedFieldsTest {
}
private static Schema createSearch(String documentType) {
- return new Schema(documentType, new Application(MockApplicationPackage.createEmpty()), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
+ return new Schema(documentType, MockApplicationPackage.createEmpty(), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
}
private static Schema createSearchWithDocument(String documentName) {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AssertSearchBuilder.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AssertSearchBuilder.java
index 6a736a5331e..534c82157e4 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AssertSearchBuilder.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AssertSearchBuilder.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import java.io.IOException;
@@ -14,13 +14,13 @@ import static org.junit.Assert.*;
public abstract class AssertSearchBuilder {
public static void assertBuilds(String searchDefinitionFileName) throws IOException, ParseException {
- assertNotNull(SchemaBuilder.buildFromFile(searchDefinitionFileName));
+ assertNotNull(ApplicationBuilder.buildFromFile(searchDefinitionFileName));
}
public static void assertBuildFails(String searchDefinitionFileName, String expectedException)
throws IOException, ParseException {
try {
- SchemaBuilder.buildFromFile(searchDefinitionFileName);
+ ApplicationBuilder.buildFromFile(searchDefinitionFileName);
fail(searchDefinitionFileName);
} catch (IllegalArgumentException e) {
assertEquals(expectedException, e.getMessage());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AttributesExactMatchTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AttributesExactMatchTestCase.java
index f1aa64c1a60..67b369fd951 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/AttributesExactMatchTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/AttributesExactMatchTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -20,7 +20,7 @@ import static org.junit.Assert.assertFalse;
public class AttributesExactMatchTestCase extends AbstractSchemaTestCase {
@Test
public void testAttributesExactMatch() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/attributesexactmatch.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/attributesexactmatch.sd");
assertEquals(schema.getConcreteField("color").getMatching().getType(), Matching.Type.EXACT);
assertEquals(schema.getConcreteField("artist").getMatching().getType(), Matching.Type.WORD);
assertEquals(schema.getConcreteField("drummer").getMatching().getType(), Matching.Type.WORD);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/BoldingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/BoldingTestCase.java
index f74e46d92dc..efec9206ed9 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/BoldingTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/BoldingTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -31,7 +31,7 @@ public class BoldingTestCase extends AbstractSchemaTestCase {
@Test
public void testBoldOnNonString() throws ParseException {
try {
- SchemaBuilder.createFromString(boldonnonstring);
+ ApplicationBuilder.createFromString(boldonnonstring);
fail("Expected exception");
} catch (IllegalArgumentException e) {
assertEquals("'bolding: on' for non-text field 'year4' (datatype int (code: 0)) is not allowed",
@@ -52,7 +52,7 @@ public class BoldingTestCase extends AbstractSchemaTestCase {
@Test
public void testBoldOnArray() throws ParseException {
try {
- SchemaBuilder.createFromString(boldonarray);
+ ApplicationBuilder.createFromString(boldonarray);
fail("Expected exception");
} catch (IllegalArgumentException e) {
assertEquals("'bolding: on' for non-text field 'myarray' (datatype Array<string> (code: -1486737430)) is not allowed",
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/BoolAttributeValidatorTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/BoolAttributeValidatorTestCase.java
index 342ff4ba2d4..db27bbbb84d 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/BoolAttributeValidatorTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/BoolAttributeValidatorTestCase.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
-import static com.yahoo.searchdefinition.SchemaBuilder.createFromString;
+import static com.yahoo.searchdefinition.ApplicationBuilder.createFromString;
import static com.yahoo.config.model.test.TestUtil.joinLines;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/DictionaryTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/DictionaryTestCase.java
index 6f8ab24de8e..a17992fad18 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/DictionaryTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/DictionaryTestCase.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.model.test.TestUtil;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.derived.AttributeFields;
import com.yahoo.searchdefinition.document.Case;
import com.yahoo.searchdefinition.document.Dictionary;
@@ -30,7 +30,7 @@ public class DictionaryTestCase {
return builder.build();
}
private Schema createSearch(String def) throws ParseException {
- SchemaBuilder sb = SchemaBuilder.createFromString(def);
+ ApplicationBuilder sb = ApplicationBuilder.createFromString(def);
return sb.getSchema();
}
@Test
@@ -196,7 +196,7 @@ public class DictionaryTestCase {
" }",
"}");
try {
- SchemaBuilder sb = SchemaBuilder.createFromString(def);
+ ApplicationBuilder sb = ApplicationBuilder.createFromString(def);
fail("Controlling dictionary for non-numeric fields are not yet supported.");
} catch (IllegalArgumentException e) {
assertEquals("For schema 'test', field 'n1': You can only specify 'dictionary:' for numeric or string fields", e.getMessage());
@@ -214,7 +214,7 @@ public class DictionaryTestCase {
" }",
"}");
try {
- SchemaBuilder sb = SchemaBuilder.createFromString(def);
+ ApplicationBuilder sb = ApplicationBuilder.createFromString(def);
fail("Controlling dictionary for non-fast-search fields are not allowed.");
} catch (IllegalArgumentException e) {
assertEquals("For schema 'test', field 'n1': You must specify 'attribute:fast-search' to allow dictionary control", e.getMessage());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/DisallowComplexMapAndWsetKeyTypesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/DisallowComplexMapAndWsetKeyTypesTestCase.java
index 03125c48d1d..b03aff455c5 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/DisallowComplexMapAndWsetKeyTypesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/DisallowComplexMapAndWsetKeyTypesTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -43,15 +43,15 @@ public class DisallowComplexMapAndWsetKeyTypesTestCase {
private void testFieldType(String fieldType) throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" struct mystruct {}\n" +
" field a type " + fieldType + " {}\n" +
" }\n" +
"}\n");
- builder.build();
+ builder.build(true);
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/FastAccessValidatorTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/FastAccessValidatorTest.java
index dd958fb34cd..0c25cef49a1 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/FastAccessValidatorTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/FastAccessValidatorTest.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.model.test.TestUtil;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Rule;
import org.junit.Test;
@@ -20,15 +20,15 @@ public class FastAccessValidatorTest {
@Test
public void throws_exception_on_incompatible_use_of_fastaccess() throws ParseException {
- SchemaBuilder builder = new SchemaBuilder(new RankProfileRegistry());
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(new RankProfileRegistry());
+ builder.addSchema(
TestUtil.joinLines(
"schema parent {",
" document parent {",
" field int_field type int { indexing: attribute }",
" }",
"}"));
- builder.importString(
+ builder.addSchema(
TestUtil.joinLines(
"schema test {",
" document test { ",
@@ -55,7 +55,7 @@ public class FastAccessValidatorTest {
"For schema 'test': The following attributes have a type that is incompatible " +
"with fast-access: predicate_attribute, tensor_attribute, reference_attribute. " +
"Predicate, tensor and reference attributes are incompatible with fast-access.");
- builder.build();
+ builder.build(true);
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSchemaFieldsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSchemaFieldsTestCase.java
index 43077fadfcd..b0b9ce81cc7 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSchemaFieldsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSchemaFieldsTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.derived.DerivedConfiguration;
import com.yahoo.searchdefinition.document.SDDocumentType;
@@ -18,7 +18,7 @@ public class ImplicitSchemaFieldsTestCase extends AbstractSchemaTestCase {
@Test
public void testRequireThatExtraFieldsAreIncluded() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/nextgen/extrafield.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/nextgen/extrafield.sd");
assertNotNull(schema);
SDDocumentType docType = schema.getDocument();
@@ -30,7 +30,7 @@ public class ImplicitSchemaFieldsTestCase extends AbstractSchemaTestCase {
@Test
public void testRequireThatSummaryFieldsAreIncluded() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/nextgen/summaryfield.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/nextgen/summaryfield.sd");
assertNotNull(schema);
SDDocumentType docType = schema.getDocument();
@@ -43,7 +43,7 @@ public class ImplicitSchemaFieldsTestCase extends AbstractSchemaTestCase {
@Test
public void testRequireThatBoldedSummaryFieldsAreIncluded() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/nextgen/boldedsummaryfields.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/nextgen/boldedsummaryfields.sd");
assertNotNull(schema);
SDDocumentType docType = schema.getDocument();
@@ -57,7 +57,7 @@ public class ImplicitSchemaFieldsTestCase extends AbstractSchemaTestCase {
@Test
public void testRequireThatUntransformedSummaryFieldsAreIgnored() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/nextgen/untransformedsummaryfields.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/nextgen/untransformedsummaryfields.sd");
assertNotNull(schema);
SDDocumentType docType = schema.getDocument();
@@ -70,7 +70,7 @@ public class ImplicitSchemaFieldsTestCase extends AbstractSchemaTestCase {
@Test
public void testRequireThatDynamicSummaryFieldsAreIgnored() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/nextgen/dynamicsummaryfields.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/nextgen/dynamicsummaryfields.sd");
assertNotNull(schema);
SDDocumentType docType = schema.getDocument();
@@ -82,9 +82,9 @@ public class ImplicitSchemaFieldsTestCase extends AbstractSchemaTestCase {
@Test
public void testRequireThatDerivedConfigurationWorks() throws IOException, ParseException {
- SchemaBuilder sb = new SchemaBuilder();
- sb.importFile("src/test/examples/nextgen/simple.sd");
- sb.build();
+ ApplicationBuilder sb = new ApplicationBuilder();
+ sb.addSchemaFile("src/test/examples/nextgen/simple.sd");
+ sb.build(true);
assertNotNull(sb.getSchema());
new DerivedConfiguration(sb.getSchema(), sb.getRankProfileRegistry());
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitStructTypesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitStructTypesTestCase.java
index bd645b68728..443eff07f41 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitStructTypesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitStructTypesTestCase.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.document.*;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.document.SDField;
@@ -16,7 +16,7 @@ import static org.junit.Assert.*;
public class ImplicitStructTypesTestCase extends AbstractSchemaTestCase {
@Test
public void testRequireThatImplicitStructsAreCreated() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/nextgen/toggleon.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/nextgen/toggleon.sd");
assertNotNull(schema);
SDDocumentType docType = schema.getDocument();
@@ -25,7 +25,7 @@ public class ImplicitStructTypesTestCase extends AbstractSchemaTestCase {
}
@Test
public void testRequireThatImplicitStructsAreUsed() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/nextgen/implicitstructtypes.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/nextgen/implicitstructtypes.sd");
assertNotNull(schema);
SDDocumentType docType = schema.getDocument();
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummariesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummariesTestCase.java
index 9c1e5d0d8d7..cc2bc7d7bf6 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummariesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummariesTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import com.yahoo.vespa.documentmodel.SummaryTransform;
import org.junit.Test;
@@ -29,7 +29,7 @@ public class ImplicitSummariesTestCase {
LogHandler log = new LogHandler();
Logger.getLogger("").addHandler(log);
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/implicitsummaries_attribute.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/implicitsummaries_attribute.sd");
assertNotNull(schema);
assertTrue(log.records.isEmpty());
}
@@ -60,19 +60,19 @@ public class ImplicitSummariesTestCase {
@Test
public void attribute_combiner_transform_is_set_on_array_of_struct_with_only_struct_field_attributes() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/derived/array_of_struct_attribute/test.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/derived/array_of_struct_attribute/test.sd");
assertEquals(SummaryTransform.ATTRIBUTECOMBINER, schema.getSummaryField("elem_array").getTransform());
}
@Test
public void attribute_combiner_transform_is_set_on_map_of_struct_with_only_struct_field_attributes() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
assertEquals(SummaryTransform.ATTRIBUTECOMBINER, schema.getSummaryField("str_elem_map").getTransform());
}
@Test
public void attribute_combiner_transform_is_not_set_when_map_of_struct_has_some_struct_field_attributes() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/derived/map_of_struct_attribute/test.sd");
assertEquals(SummaryTransform.NONE, schema.getSummaryField("int_elem_map").getTransform());
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFieldsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFieldsTestCase.java
index 44b1d9387f1..175b8d6fe1e 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFieldsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImplicitSummaryFieldsTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
import com.yahoo.vespa.documentmodel.DocumentSummary;
@@ -17,7 +17,7 @@ public class ImplicitSummaryFieldsTestCase extends AbstractSchemaTestCase {
@Test
public void testRequireThatImplicitFieldsAreCreated() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/implicitsummaryfields.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/implicitsummaryfields.sd");
assertNotNull(schema);
DocumentSummary docsum = schema.getSummary("default");
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsTestCase.java
index 6eab1dddc79..b15b81b717d 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ImportedFieldsTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.derived.AttributeFields;
import com.yahoo.searchdefinition.document.ImportedComplexField;
import com.yahoo.searchdefinition.document.ImportedField;
@@ -68,21 +68,21 @@ public class ImportedFieldsTestCase {
}
private static Schema buildAdSearch(String sdContent) throws ParseException {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(joinLines(
"schema campaign {",
" document campaign {",
" field budget type int { indexing: attribute }",
" }",
"}"));
- builder.importString(joinLines(
+ builder.addSchema(joinLines(
"schema person {",
" document person {",
" field name type string { indexing: attribute }",
" }",
"}"));
- builder.importString(sdContent);
- builder.build();
+ builder.addSchema(sdContent);
+ builder.build(true);
return builder.getSchema("ad");
}
@@ -312,19 +312,19 @@ public class ImportedFieldsTestCase {
}
private static Schema buildChildSearch(String parentSdContent, String sdContent) throws ParseException {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(parentSdContent);
- builder.importString(sdContent);
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(parentSdContent);
+ builder.addSchema(sdContent);
+ builder.build(true);
return builder.getSchema("child");
}
private static Schema buildChildSearch(String grandParentSdContent, String parentSdContent, String sdContent) throws ParseException {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(grandParentSdContent);
- builder.importString(parentSdContent);
- builder.importString(sdContent);
- builder.build();
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(grandParentSdContent);
+ builder.addSchema(parentSdContent);
+ builder.addSchema(sdContent);
+ builder.build(true);
return builder.getSchema("child");
}
@@ -488,41 +488,41 @@ public class ImportedFieldsTestCase {
assertTrue(attrs.containsAttribute("entries.value"));
}
- private SchemaBuilder buildParentsUsingInheritance() throws ParseException {
- var builder = new SchemaBuilder();
- builder.importString(joinLines("schema parent_a {",
- "document parent_a {",
- " struct Entry {",
- " field key type string {}",
- " field value type string {}",
- " }",
- " field entries type array<Entry> {",
- " indexing: summary",
- " struct-field key { indexing: attribute }",
- " struct-field value { indexing: attribute }",
- " }",
- "}",
- "}"));
-
- builder.importString(joinLines("schema parent_b {",
- "document parent_b inherits parent_a {",
- "}",
- "}"));
-
- builder.importString(joinLines("schema child {",
- "document child {",
- " field ref_parent_a type reference<parent_a> {",
- " indexing: attribute",
- " }",
- " field ref_parent_b type reference<parent_b> {",
- " indexing: attribute",
- " }",
- "}",
- "import field ref_parent_a.entries as entries_from_a {}",
- "import field ref_parent_b.entries as entries_from_b {}",
- "}"));
-
- builder.build();
+ private ApplicationBuilder buildParentsUsingInheritance() throws ParseException {
+ var builder = new ApplicationBuilder();
+ builder.addSchema(joinLines("schema parent_a {",
+ "document parent_a {",
+ " struct Entry {",
+ " field key type string {}",
+ " field value type string {}",
+ " }",
+ " field entries type array<Entry> {",
+ " indexing: summary",
+ " struct-field key { indexing: attribute }",
+ " struct-field value { indexing: attribute }",
+ " }",
+ "}",
+ "}"));
+
+ builder.addSchema(joinLines("schema parent_b {",
+ "document parent_b inherits parent_a {",
+ "}",
+ "}"));
+
+ builder.addSchema(joinLines("schema child {",
+ "document child {",
+ " field ref_parent_a type reference<parent_a> {",
+ " indexing: attribute",
+ " }",
+ " field ref_parent_b type reference<parent_b> {",
+ " indexing: attribute",
+ " }",
+ "}",
+ "import field ref_parent_a.entries as entries_from_a {}",
+ "import field ref_parent_b.entries as entries_from_b {}",
+ "}"));
+
+ builder.build(true);
return builder;
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingScriptRewriterTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingScriptRewriterTestCase.java
index 3105e3c7efd..9e4ba1c6728 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingScriptRewriterTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingScriptRewriterTestCase.java
@@ -2,11 +2,12 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
+import com.yahoo.config.model.test.MockApplicationPackage;
import com.yahoo.document.DataType;
import com.yahoo.searchdefinition.Index;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.document.BooleanIndexDefinition;
import com.yahoo.searchdefinition.document.SDDocumentType;
@@ -120,7 +121,7 @@ public class IndexingScriptRewriterTestCase extends AbstractSchemaTestCase {
"clear_state | guard { input smallattribute | attribute smallattribute; }",
"clear_state | guard { input title | tokenize normalize stem:\"BEST\" | summary title | index title; }",
"clear_state | guard { input title . \" \" . input category | tokenize | summary exact | index exact; }"),
- SchemaBuilder.buildFromFile("src/test/examples/simple.sd"));
+ ApplicationBuilder.buildFromFile("src/test/examples/simple.sd"));
}
@Test
@@ -129,7 +130,7 @@ public class IndexingScriptRewriterTestCase extends AbstractSchemaTestCase {
Arrays.asList("clear_state | guard { input title_src | lowercase | normalize | " +
" tokenize | index title; }",
"clear_state | guard { input title_src | summary title_s; }"),
- SchemaBuilder.buildFromFile("src/test/examples/indexrewrite.sd"));
+ ApplicationBuilder.buildFromFile("src/test/examples/indexrewrite.sd"));
}
@Test
@@ -154,7 +155,7 @@ public class IndexingScriptRewriterTestCase extends AbstractSchemaTestCase {
private static ScriptExpression processField(SDField unprocessedField) {
SDDocumentType sdoc = new SDDocumentType("test");
sdoc.addField(unprocessedField);
- Schema schema = new Schema("test");
+ Schema schema = new Schema("test", MockApplicationPackage.createEmpty());
schema.addDocument(sdoc);
new Processing().process(schema, new BaseDeployLogger(), new RankProfileRegistry(),
new QueryProfiles(), true, false, Set.of());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingValidationTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingValidationTestCase.java
index 5b5c5cedc0d..74a8cdfdb6a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingValidationTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/IndexingValidationTestCase.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.derived.AbstractExportingTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -64,7 +64,7 @@ public class IndexingValidationTestCase extends AbstractExportingTestCase {
assertIndexing(
Arrays.asList("clear_state | guard { input my_index | tokenize normalize stem:\"BEST\" | index my_index | summary my_index }",
"clear_state | guard { input my_input | tokenize normalize stem:\"BEST\" | index my_extra | summary my_extra }"),
- SchemaBuilder.buildFromFile("src/test/examples/indexing_extra.sd"));
+ ApplicationBuilder.buildFromFile("src/test/examples/indexing_extra.sd"));
}
@Test
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/IntegerIndex2AttributeTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/IntegerIndex2AttributeTestCase.java
index 4b13590c777..2465839b72b 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/IntegerIndex2AttributeTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/IntegerIndex2AttributeTestCase.java
@@ -4,7 +4,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.document.SDField;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -24,7 +24,7 @@ public class IntegerIndex2AttributeTestCase extends AbstractSchemaTestCase {
@Test
public void testIntegerIndex2Attribute() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/integerindex2attribute.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/integerindex2attribute.sd");
new IntegerIndex2Attribute(schema, new BaseDeployLogger(), new RankProfileRegistry(), new QueryProfiles()).process(true, false);
SDField f;
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolverTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolverTestCase.java
index 7eea2fca0e6..b48927d58a3 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolverTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/MatchedElementsOnlyResolverTestCase.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.documentmodel.SummaryTransform;
@@ -175,18 +175,18 @@ public class MatchedElementsOnlyResolverTestCase {
}
private Schema buildSearch(String field, String summary) throws ParseException {
- var builder = new SchemaBuilder(new RankProfileRegistry());
- builder.importString(joinLines("search test {",
- " document test {",
- " struct elem {",
- " field name type string {}",
- " field weight type int {}",
- " }",
- field,
- " }",
- summary,
- "}"));
- builder.build();
+ var builder = new ApplicationBuilder(new RankProfileRegistry());
+ builder.addSchema(joinLines("search test {",
+ " document test {",
+ " struct elem {",
+ " field name type string {}",
+ " field weight type int {}",
+ " }",
+ field,
+ " }",
+ summary,
+ "}"));
+ builder.build(true);
return builder.getSchema();
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/NGramTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/NGramTestCase.java
index 1adb909ff21..7169a97f3fc 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/NGramTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/NGramTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.document.Matching;
import com.yahoo.searchdefinition.document.SDField;
@@ -25,7 +25,7 @@ public class NGramTestCase extends AbstractSchemaTestCase {
@Test
public void testNGram() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/ngram.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/ngram.sd");
assertNotNull(schema);
SDField gram1 = schema.getConcreteField("gram_1");
@@ -55,7 +55,7 @@ public class NGramTestCase extends AbstractSchemaTestCase {
@Test
public void testInvalidNGramSetting1() throws IOException, ParseException {
try {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/invalidngram1.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/invalidngram1.sd");
fail("Should cause an exception");
}
catch (IllegalArgumentException e) {
@@ -66,7 +66,7 @@ public class NGramTestCase extends AbstractSchemaTestCase {
@Test
public void testInvalidNGramSetting2() throws IOException, ParseException {
try {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/invalidngram2.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/invalidngram2.sd");
fail("Should cause an exception");
}
catch (IllegalArgumentException e) {
@@ -77,7 +77,7 @@ public class NGramTestCase extends AbstractSchemaTestCase {
@Test
public void testInvalidNGramSetting3() throws IOException, ParseException {
try {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/invalidngram3.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/invalidngram3.sd");
fail("Should cause an exception");
}
catch (IllegalArgumentException e) {
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/PagedAttributeValidatorTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/PagedAttributeValidatorTestCase.java
index 5fce16f381a..02b5997471b 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/PagedAttributeValidatorTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/PagedAttributeValidatorTestCase.java
@@ -5,7 +5,7 @@ import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
import static com.yahoo.config.model.test.TestUtil.joinLines;
-import static com.yahoo.searchdefinition.SchemaBuilder.createFromString;
+import static com.yahoo.searchdefinition.ApplicationBuilder.createFromString;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ParentChildSearchModel.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ParentChildSearchModel.java
index 74fa7c72554..b14c7287537 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ParentChildSearchModel.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ParentChildSearchModel.java
@@ -23,7 +23,6 @@ import com.yahoo.searchdefinition.document.TemporarySDField;
*/
public class ParentChildSearchModel {
- private final Application application = new Application(MockApplicationPackage.createEmpty());
public Schema parentSchema;
public Schema childSchema;
@@ -33,7 +32,7 @@ public class ParentChildSearchModel {
}
protected Schema createSearch(String name) {
- Schema result = new Schema(name, application, new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
+ Schema result = new Schema(name, MockApplicationPackage.createEmpty(), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
result.addDocument(new SDDocumentType(name));
return result;
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/PositionTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/PositionTestCase.java
index c3beeeaa17e..eaf38396efc 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/PositionTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/PositionTestCase.java
@@ -5,7 +5,7 @@ import com.yahoo.document.DataType;
import com.yahoo.document.DocumentType;
import com.yahoo.document.PositionDataType;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.document.Attribute;
import com.yahoo.searchdefinition.document.FieldSet;
import com.yahoo.vespa.documentmodel.SummaryField;
@@ -27,7 +27,7 @@ public class PositionTestCase {
@Test
public void inherited_position_zcurve_field_is_not_added_to_document_fieldset() throws Exception {
- SchemaBuilder sb = SchemaBuilder.createFromFiles(Arrays.asList(
+ ApplicationBuilder sb = ApplicationBuilder.createFromFiles(Arrays.asList(
"src/test/examples/position_base.sd",
"src/test/examples/position_inherited.sd"));
@@ -38,7 +38,7 @@ public class PositionTestCase {
@Test
public void requireThatPositionCanBeAttribute() throws Exception {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/position_attribute.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/position_attribute.sd");
assertNull(schema.getAttribute("pos"));
assertNull(schema.getAttribute("pos.x"));
assertNull(schema.getAttribute("pos.y"));
@@ -50,7 +50,7 @@ public class PositionTestCase {
@Test
public void requireThatPositionCanNotBeIndex() throws Exception {
try {
- SchemaBuilder.buildFromFile("src/test/examples/position_index.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/position_index.sd");
fail();
} catch (IllegalArgumentException e) {
assertEquals("For schema 'position_index', field 'pos': Indexing of data type 'position' is not " +
@@ -60,7 +60,7 @@ public class PositionTestCase {
@Test
public void requireThatSummaryAloneDoesNotCreateZCurve() throws Exception {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/position_summary.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/position_summary.sd");
assertNull(schema.getAttribute("pos"));
assertNull(schema.getAttribute("pos.x"));
assertNull(schema.getAttribute("pos.y"));
@@ -79,7 +79,7 @@ public class PositionTestCase {
@Test
public void requireThatExtraFieldCanBePositionAttribute() throws Exception {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/position_extra.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/position_extra.sd");
assertNull(schema.getAttribute("pos_ext"));
assertNull(schema.getAttribute("pos_ext.x"));
assertNull(schema.getAttribute("pos_ext.y"));
@@ -90,7 +90,7 @@ public class PositionTestCase {
@Test
public void requireThatPositionArrayIsSupported() throws Exception {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/position_array.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/position_array.sd");
assertNull(schema.getAttribute("pos"));
assertNull(schema.getAttribute("pos.x"));
assertNull(schema.getAttribute("pos.y"));
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankModifierTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankModifierTestCase.java
index 87dd92f41d9..3a0ceebcb0a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankModifierTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankModifierTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -17,6 +17,6 @@ import java.io.IOException;
public class RankModifierTestCase extends AbstractSchemaTestCase {
@Test
public void testLiteral() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/rankmodifier/literal.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/rankmodifier/literal.sd");
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankProfileSearchFixture.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankProfileSearchFixture.java
index 2707f60f828..2d0bdb58122 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankProfileSearchFixture.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankProfileSearchFixture.java
@@ -13,7 +13,7 @@ import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import ai.vespa.rankingexpression.importer.configmodelview.ImportedMlModels;
import ai.vespa.rankingexpression.importer.onnx.OnnxImporter;
@@ -68,7 +68,7 @@ class RankProfileSearchFixture {
String rankProfiles, String constant, String field)
throws ParseException {
this.queryProfileRegistry = queryProfileRegistry;
- SchemaBuilder builder = new SchemaBuilder(applicationpackage, new MockFileRegistry(), new BaseDeployLogger(), new TestProperties(), rankProfileRegistry, queryProfileRegistry);
+ ApplicationBuilder builder = new ApplicationBuilder(applicationpackage, new MockFileRegistry(), new BaseDeployLogger(), new TestProperties(), rankProfileRegistry, queryProfileRegistry);
String sdContent = "search test {\n" +
" " + (constant != null ? constant : "") + "\n" +
" document test {\n" +
@@ -77,8 +77,8 @@ class RankProfileSearchFixture {
rankProfiles +
"\n" +
"}";
- builder.importString(sdContent);
- builder.build();
+ builder.addSchema(sdContent);
+ builder.build(true);
schema = builder.getSchema();
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankPropertyVariablesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankPropertyVariablesTestCase.java
index b1624b7fd7e..0ab7406b5b1 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankPropertyVariablesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankPropertyVariablesTestCase.java
@@ -6,7 +6,7 @@ import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfile.RankProperty;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -21,10 +21,10 @@ public class RankPropertyVariablesTestCase extends AbstractSchemaTestCase {
@Test
public void testRankPropVariables() throws IOException, ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/rankpropvars.sd",
- new BaseDeployLogger(),
- rankProfileRegistry,
- new QueryProfileRegistry());
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/rankpropvars.sd",
+ new BaseDeployLogger(),
+ rankProfileRegistry,
+ new QueryProfileRegistry());
assertRankPropEquals(rankProfileRegistry.get(schema, "other").getRankProperties(), "$testvar1", "foo");
assertRankPropEquals(rankProfileRegistry.get(schema, "other").getRankProperties(), "$testvar_2", "bar");
assertRankPropEquals(rankProfileRegistry.get(schema, "other").getRankProperties(), "$testvarOne23", "baz");
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionTypeResolverTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionTypeResolverTestCase.java
index 4f18c9b68fd..7f5e8f8753a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionTypeResolverTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionTypeResolverTestCase.java
@@ -7,7 +7,7 @@ import com.yahoo.search.query.profile.types.QueryProfileType;
import com.yahoo.search.query.profile.types.TensorFieldType;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchlib.rankingexpression.rule.ReferenceNode;
import com.yahoo.tensor.TensorType;
import com.yahoo.yolean.Exceptions;
@@ -33,8 +33,8 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void tensorFirstPhaseMustProduceDouble() throws Exception {
try {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field a type tensor(x[10],y[3]) {",
@@ -48,7 +48,7 @@ public class RankingExpressionTypeResolverTestCase {
" }",
"}"
));
- builder.build();
+ builder.build(true);
fail("Expected exception");
}
catch (IllegalArgumentException expected) {
@@ -61,8 +61,8 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void tensorFirstPhaseFromConstantMustProduceDouble() throws Exception {
try {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field a type tensor(d0[3]) {",
@@ -96,7 +96,7 @@ public class RankingExpressionTypeResolverTestCase {
" }",
"}"
));
- builder.build();
+ builder.build(true);
fail("Expected exception");
}
catch (IllegalArgumentException expected) {
@@ -110,8 +110,8 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void tensorSecondPhaseMustProduceDouble() throws Exception {
try {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field a type tensor(x[10],y[3]) {",
@@ -128,7 +128,7 @@ public class RankingExpressionTypeResolverTestCase {
" }",
"}"
));
- builder.build();
+ builder.build(true);
fail("Expected exception");
}
catch (IllegalArgumentException expected) {
@@ -140,8 +140,8 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void tensorConditionsMustHaveTypeCompatibleBranches() throws Exception {
try {
- SchemaBuilder schemaBuilder = new SchemaBuilder();
- schemaBuilder.importString(joinLines(
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder();
+ schemaBuilder.addSchema(joinLines(
"search test {",
" document test { ",
" field a type tensor(x[10],y[5]) {",
@@ -158,7 +158,7 @@ public class RankingExpressionTypeResolverTestCase {
" }",
"}"
));
- schemaBuilder.build();
+ schemaBuilder.build(true);
fail("Expected exception");
}
catch (IllegalArgumentException expected) {
@@ -172,8 +172,8 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void testFunctionInvocationTypes() throws Exception {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry);
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry);
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field a type tensor(x[10],y[3]) {",
@@ -194,7 +194,7 @@ public class RankingExpressionTypeResolverTestCase {
" }",
"}"
));
- builder.build();
+ builder.build(true);
RankProfile profile =
builder.getRankProfileRegistry().get(builder.getSchema(), "my_rank_profile");
assertEquals(TensorType.fromSpec("tensor(x[10],y[3])"),
@@ -205,8 +205,8 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void testTensorFunctionInvocationTypes_Nested() throws Exception {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field a type tensor(x[10],y[1]) {",
@@ -236,7 +236,7 @@ public class RankingExpressionTypeResolverTestCase {
" }",
"}"
));
- builder.build();
+ builder.build(true);
RankProfile profile =
builder.getRankProfileRegistry().get(builder.getSchema(), "my_rank_profile");
assertEquals(TensorType.fromSpec("tensor(x[10],y[1])"),
@@ -247,8 +247,8 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void testAttributeInvocationViaBoundIdentifier() throws Exception {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(joinLines(
"search newsarticle {",
" document newsarticle {",
" field title type string {",
@@ -280,14 +280,14 @@ public class RankingExpressionTypeResolverTestCase {
" first-phase { expression: commonfirstphase(eustaticrank) }",
" }",
"}"));
- builder.build();
+ builder.build(true);
RankProfile profile = builder.getRankProfileRegistry().get(builder.getSchema(), "eurank");
}
@Test
public void testTensorFunctionInvocationTypes_NestedSameName() throws Exception {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field a type tensor(x[10],y[1]) {",
@@ -320,7 +320,7 @@ public class RankingExpressionTypeResolverTestCase {
" }",
"}"
));
- builder.build();
+ builder.build(true);
RankProfile profile =
builder.getRankProfileRegistry().get(builder.getSchema(), "my_rank_profile");
assertEquals(TensorType.fromSpec("tensor(x[10],y[1])"),
@@ -331,8 +331,8 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void testTensorFunctionInvocationTypes_viaFuncWithExpr() throws Exception {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(joinLines(
"search test {",
" document test {",
" field t1 type tensor<float>(y{}) { indexing: attribute | summary }",
@@ -345,7 +345,7 @@ public class RankingExpressionTypeResolverTestCase {
" summary-features { test_func_via_func_with_expr }",
" }",
"}"));
- builder.build();
+ builder.build(true);
RankProfile profile = builder.getRankProfileRegistry().get(builder.getSchema(), "test");
assertEquals(TensorType.fromSpec("tensor<float>(y{})"),
summaryFeatures(profile).get("test_func_via_func_with_expr").type(profile.typeContext(builder.getQueryProfileRegistry())));
@@ -353,8 +353,8 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void importedFieldsAreAvailable() throws Exception {
- SchemaBuilder builder = new SchemaBuilder();
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder();
+ builder.addSchema(joinLines(
"search parent {",
" document parent {",
" field a type tensor(x[5],y[1000]) {",
@@ -363,7 +363,7 @@ public class RankingExpressionTypeResolverTestCase {
" }",
"}"
));
- builder.importString(joinLines(
+ builder.addSchema(joinLines(
"search child {",
" document child { ",
" field ref type reference<parent> {",
@@ -378,14 +378,14 @@ public class RankingExpressionTypeResolverTestCase {
" }",
"}"
));
- builder.build();
+ builder.build(true);
}
@Test
public void undeclaredQueryFeaturesAreAccepted() throws Exception {
InspectableDeployLogger logger = new InspectableDeployLogger();
- SchemaBuilder builder = new SchemaBuilder(logger);
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(logger);
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field anyfield type double {" +
@@ -410,8 +410,8 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void undeclaredQueryFeaturesAreAcceptedWithWarningWhenUsingTensors() throws Exception {
InspectableDeployLogger logger = new InspectableDeployLogger();
- SchemaBuilder builder = new SchemaBuilder(logger);
- builder.importString(joinLines(
+ ApplicationBuilder builder = new ApplicationBuilder(logger);
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field anyfield type tensor(d[2]) {",
@@ -439,7 +439,7 @@ public class RankingExpressionTypeResolverTestCase {
@Test
public void noWarningWhenUsingTensorsWhenQueryFeaturesAreDeclared() throws Exception {
InspectableDeployLogger logger = new InspectableDeployLogger();
- SchemaBuilder builder = new SchemaBuilder(logger);
+ ApplicationBuilder builder = new ApplicationBuilder(logger);
QueryProfileType myType = new QueryProfileType("mytype");
myType.addField(new FieldDescription("rank.feature.query(foo)",
new TensorFieldType(TensorType.fromSpec("tensor(d[2])"))),
@@ -451,7 +451,7 @@ public class RankingExpressionTypeResolverTestCase {
new TensorFieldType(TensorType.fromSpec("tensor(d[2])"))),
builder.getQueryProfileRegistry().getTypeRegistry());
builder.getQueryProfileRegistry().getTypeRegistry().register(myType);
- builder.importString(joinLines(
+ builder.addSchema(joinLines(
"search test {",
" document test { ",
" field anyfield type tensor(d[2]) {",
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithOnnxTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithOnnxTestCase.java
index 09aa09a626b..2a9d64767ba 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithOnnxTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithOnnxTestCase.java
@@ -399,8 +399,10 @@ public class RankingExpressionWithOnnxTestCase {
@Override
public List<NamedReader> getFiles(Path path, String suffix) {
+ File[] files = getFileReference(path).listFiles();
+ if (files == null) return List.of();
List<NamedReader> readers = new ArrayList<>();
- for (File file : getFileReference(path).listFiles()) {
+ for (File file : files) {
if ( ! file.getName().endsWith(suffix)) continue;
try {
readers.add(new NamedReader(file.getName(), new FileReader(file)));
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithTransformerTokensTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithTransformerTokensTestCase.java
index 93de116883a..ffc073ed434 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithTransformerTokensTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionWithTransformerTokensTestCase.java
@@ -9,7 +9,7 @@ import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.expressiontransforms.RankProfileTransformContext;
import com.yahoo.searchdefinition.expressiontransforms.TokenTransformer;
import com.yahoo.searchdefinition.parser.ParseException;
@@ -87,9 +87,9 @@ public class RankingExpressionWithTransformerTokensTestCase {
" document test {}\n" +
" rank-profile my_profile inherits default {}\n" +
"}";
- SchemaBuilder schemaBuilder = new SchemaBuilder(application, new MockFileRegistry(), new BaseDeployLogger(), new TestProperties(), rankProfileRegistry, queryProfileRegistry);
- schemaBuilder.importString(sdContent);
- schemaBuilder.build();
+ ApplicationBuilder schemaBuilder = new ApplicationBuilder(application, new MockFileRegistry(), new BaseDeployLogger(), new TestProperties(), rankProfileRegistry, queryProfileRegistry);
+ schemaBuilder.addSchema(sdContent);
+ schemaBuilder.build(true);
Schema schema = schemaBuilder.getSchema();
RankProfile rp = rankProfileRegistry.get(schema, "my_profile");
return new RankProfileTransformContext(rp, queryProfileRegistry, Collections.emptyMap(), null, Collections.emptyMap(), Collections.emptyMap());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionsTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionsTestCase.java
index f4742be6b30..b42f932ef98 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/RankingExpressionsTestCase.java
@@ -11,7 +11,7 @@ import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.derived.DerivedConfiguration;
import com.yahoo.searchdefinition.derived.AttributeFields;
import com.yahoo.searchdefinition.derived.RawRankProfile;
@@ -31,7 +31,7 @@ import static org.junit.Assert.assertTrue;
public class RankingExpressionsTestCase extends AbstractSchemaTestCase {
private static Schema createSearch(String dir, ModelContext.Properties deployProperties, RankProfileRegistry rankProfileRegistry) throws IOException, ParseException {
- return SchemaBuilder.createFromDirectory(dir, new MockFileRegistry(), new TestableDeployLogger(), deployProperties, rankProfileRegistry).getSchema();
+ return ApplicationBuilder.createFromDirectory(dir, new MockFileRegistry(), new TestableDeployLogger(), deployProperties, rankProfileRegistry).getSchema();
}
@Test
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReferenceFieldTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReferenceFieldTestCase.java
index c9437761e0d..d60cb9040d8 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReferenceFieldTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReferenceFieldTestCase.java
@@ -6,7 +6,7 @@ import com.yahoo.document.Field;
import com.yahoo.document.ReferenceDataType;
import com.yahoo.searchdefinition.DocumentGraphValidator;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.document.SDDocumentType;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Rule;
@@ -28,7 +28,7 @@ public class ReferenceFieldTestCase {
@Test
public void reference_fields_are_parsed_from_search_definition() throws ParseException {
- SchemaBuilder builder = new SchemaBuilder();
+ ApplicationBuilder builder = new ApplicationBuilder();
String campaignSdContent =
"search campaign {\n" +
" document campaign {\n" +
@@ -46,10 +46,10 @@ public class ReferenceFieldTestCase {
" field salesperson_ref type reference<salesperson> { indexing: attribute }\n" +
" }\n" +
"}";
- builder.importString(campaignSdContent);
- builder.importString(salespersonSdContent);
- builder.importString(adSdContent);
- builder.build();
+ builder.addSchema(campaignSdContent);
+ builder.addSchema(salespersonSdContent);
+ builder.addSchema(adSdContent);
+ builder.build(true);
Schema schema = builder.getSchema("ad");
assertSearchContainsReferenceField("campaign_ref", "campaign", schema.getDocument());
assertSearchContainsReferenceField("salesperson_ref", "salesperson", schema.getDocument());
@@ -57,7 +57,7 @@ public class ReferenceFieldTestCase {
@Test
public void cyclic_document_dependencies_are_detected() throws ParseException {
- SchemaBuilder builder = new SchemaBuilder();
+ ApplicationBuilder builder = new ApplicationBuilder();
String campaignSdContent =
"search campaign {\n" +
" document campaign {\n" +
@@ -70,11 +70,11 @@ public class ReferenceFieldTestCase {
" field campaign_ref type reference<campaign> { indexing: attribute }\n" +
" }\n" +
"}";
- builder.importString(campaignSdContent);
- builder.importString(adSdContent);
+ builder.addSchema(campaignSdContent);
+ builder.addSchema(adSdContent);
exceptionRule.expect(DocumentGraphValidator.DocumentGraphException.class);
exceptionRule.expectMessage("Document dependency cycle detected: campaign->ad->campaign.");
- builder.build();
+ builder.build(true);
}
private static void assertSearchContainsReferenceField(String expectedFieldname,
@@ -87,4 +87,5 @@ public class ReferenceFieldTestCase {
ReferenceDataType refField = (ReferenceDataType) dataType;
assertEquals(referencedDocType, refField.getTargetType().getName());
}
+
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReservedRankingExpressionFunctionNamesTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReservedRankingExpressionFunctionNamesTestCase.java
index 922680e8f1a..d3d79fd7798 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReservedRankingExpressionFunctionNamesTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ReservedRankingExpressionFunctionNamesTestCase.java
@@ -3,7 +3,7 @@ package com.yahoo.searchdefinition.processing;
import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -21,8 +21,8 @@ public class ReservedRankingExpressionFunctionNamesTestCase {
public void requireThatFunctionsWithReservedNamesIssueAWarning() throws ParseException {
TestDeployLogger deployLogger = new TestDeployLogger();
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
- SchemaBuilder builder = new SchemaBuilder(deployLogger, rankProfileRegistry);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(deployLogger, rankProfileRegistry);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field a type string { \n" +
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SchemaMustHaveDocumentTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SchemaMustHaveDocumentTest.java
index 24dc98e4d93..4cfe4c09052 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SchemaMustHaveDocumentTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SchemaMustHaveDocumentTest.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.searchdefinition.processing;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -17,7 +17,7 @@ public class SchemaMustHaveDocumentTest {
@Test
public void requireErrorWhenMissingDocument() throws IOException, ParseException {
try {
- SchemaBuilder.buildFromFile("src/test/examples/invalid_sd_missing_document.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/invalid_sd_missing_document.sd");
fail("SD without document");
} catch (IllegalArgumentException e) {
if (!e.getMessage()
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryConsistencyTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryConsistencyTestCase.java
index 067a132cc4a..f224dc0688e 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryConsistencyTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryConsistencyTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.parser.ParseException;
import com.yahoo.vespa.documentmodel.SummaryTransform;
import org.junit.Test;
@@ -39,7 +39,7 @@ public class SummaryConsistencyTestCase {
"",
"}"
);
- Schema schema = SchemaBuilder.createFromString(sd).getSchema();
+ Schema schema = ApplicationBuilder.createFromString(sd).getSchema();
assertEquals(SummaryTransform.ATTRIBUTECOMBINER, schema.getSummaryField("elem_array_unfiltered").getTransform());
}
}
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSourceTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSourceTestCase.java
index eb3e61b9f7a..1eb5e66df93 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSourceTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/SummaryFieldsMustHaveValidSourceTestCase.java
@@ -5,7 +5,7 @@ import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -21,7 +21,7 @@ public class SummaryFieldsMustHaveValidSourceTestCase extends AbstractSchemaTest
@Test
public void requireThatInvalidSourceIsCaught() throws IOException, ParseException {
try {
- SchemaBuilder.buildFromFile("src/test/examples/invalidsummarysource.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/invalidsummarysource.sd");
fail("This should throw and never get here");
} catch (IllegalArgumentException e) {
assertEquals("For schema 'invalidsummarysource', summary class 'baz', summary field 'cox': there is no valid source 'nonexistingfield'.", e.getMessage());
@@ -31,7 +31,7 @@ public class SummaryFieldsMustHaveValidSourceTestCase extends AbstractSchemaTest
@Test
public void requireThatInvalidImplicitSourceIsCaught() throws IOException, ParseException {
try {
- SchemaBuilder.buildFromFile("src/test/examples/invalidimplicitsummarysource.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/invalidimplicitsummarysource.sd");
fail("This should throw and never get here");
} catch (IllegalArgumentException e) {
assertEquals("For schema 'invalidsummarysource', summary class 'baz', summary field 'cox': there is no valid source 'cox'.", e.getMessage());
@@ -41,7 +41,7 @@ public class SummaryFieldsMustHaveValidSourceTestCase extends AbstractSchemaTest
@Test
public void requireThatInvalidSelfReferingSingleSource() throws IOException, ParseException {
try {
- SchemaBuilder.buildFromFile("src/test/examples/invalidselfreferringsummary.sd");
+ ApplicationBuilder.buildFromFile("src/test/examples/invalidselfreferringsummary.sd");
fail("This should throw and never get here");
} catch (IllegalArgumentException e) {
assertEquals("For schema 'invalidselfreferringsummary', summary class 'withid', summary field 'w': there is no valid source 'w'.", e.getMessage());
@@ -50,7 +50,7 @@ public class SummaryFieldsMustHaveValidSourceTestCase extends AbstractSchemaTest
@Test
public void requireThatDocumentIdIsAllowedToPass() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/documentidinsummary.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/documentidinsummary.sd");
BaseDeployLogger deployLogger = new BaseDeployLogger();
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
new SummaryFieldsMustHaveValidSource(schema, deployLogger, rankProfileRegistry, new QueryProfiles()).process(true, false);
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorFieldTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorFieldTestCase.java
index 82b288dc66d..9e53bd57d77 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorFieldTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorFieldTestCase.java
@@ -6,7 +6,7 @@ import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
-import static com.yahoo.searchdefinition.SchemaBuilder.createFromString;
+import static com.yahoo.searchdefinition.ApplicationBuilder.createFromString;
import static com.yahoo.config.model.test.TestUtil.joinLines;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java
index eec2ef4c3a0..c71fd3dd489 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/TensorTransformTestCase.java
@@ -14,7 +14,7 @@ import com.yahoo.searchdefinition.LargeRankExpressions;
import com.yahoo.searchdefinition.RankProfile;
import com.yahoo.searchdefinition.RankProfileRegistry;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.derived.AttributeFields;
import com.yahoo.searchdefinition.derived.RawRankProfile;
@@ -140,8 +140,8 @@ public class TensorTransformTestCase extends AbstractSchemaTestCase {
private List<Pair<String, String>> buildSearch(String expression) throws ParseException {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
QueryProfileRegistry queryProfiles = setupQueryProfileTypes();
- SchemaBuilder builder = new SchemaBuilder(rankProfileRegistry, queryProfiles);
- builder.importString(
+ ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry, queryProfiles);
+ builder.addSchema(
"search test {\n" +
" document test { \n" +
" field double_field type double { \n" +
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesTest.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesTest.java
index fe9d19310a9..22fd4e45c4a 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesTest.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/ValidateFieldTypesTest.java
@@ -51,7 +51,7 @@ public class ValidateFieldTypesTest {
private static Schema createSearch(String documentType) {
return new Schema(documentType,
- new Application(MockApplicationPackage.createEmpty()),
+ MockApplicationPackage.createEmpty(),
new MockFileRegistry(),
new TestableDeployLogger(),
new TestProperties());
diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/processing/WeightedSetSummaryToTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/processing/WeightedSetSummaryToTestCase.java
index 2a737f4eb69..e56d6ccf343 100644
--- a/config-model/src/test/java/com/yahoo/searchdefinition/processing/WeightedSetSummaryToTestCase.java
+++ b/config-model/src/test/java/com/yahoo/searchdefinition/processing/WeightedSetSummaryToTestCase.java
@@ -2,7 +2,7 @@
package com.yahoo.searchdefinition.processing;
import com.yahoo.searchdefinition.Schema;
-import com.yahoo.searchdefinition.SchemaBuilder;
+import com.yahoo.searchdefinition.ApplicationBuilder;
import com.yahoo.searchdefinition.AbstractSchemaTestCase;
import com.yahoo.searchdefinition.parser.ParseException;
import org.junit.Test;
@@ -16,7 +16,7 @@ public class WeightedSetSummaryToTestCase extends AbstractSchemaTestCase {
@Test
public void testRequireThatImplicitFieldsAreCreated() throws IOException, ParseException {
- Schema schema = SchemaBuilder.buildFromFile("src/test/examples/weightedset-summaryto.sd");
+ Schema schema = ApplicationBuilder.buildFromFile("src/test/examples/weightedset-summaryto.sd");
assertNotNull(schema);
}