summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@vespa.ai>2023-09-27 17:43:17 +0200
committerJon Bratseth <bratseth@vespa.ai>2023-09-27 17:43:17 +0200
commit9e1fd455fb3bd911bd6183c42e3d513c3f6278af (patch)
treecd159585656a4767c13aa916594d998ec1e60591 /config-model
parent12f9d93fd13a74eb022e8ef0633ff3b1456d345b (diff)
Simplify tests
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/test/examples/indexing_extra_field_input_extra_field.sd12
-rw-r--r--config-model/src/test/examples/indexing_extra_field_input_implicit.sd9
-rw-r--r--config-model/src/test/examples/indexing_extra_field_input_null.sd9
-rw-r--r--config-model/src/test/examples/indexing_extra_field_input_self.sd9
-rw-r--r--config-model/src/test/java/com/yahoo/schema/processing/IndexingInputsTestCase.java102
5 files changed, 82 insertions, 59 deletions
diff --git a/config-model/src/test/examples/indexing_extra_field_input_extra_field.sd b/config-model/src/test/examples/indexing_extra_field_input_extra_field.sd
deleted file mode 100644
index 315d6c2a677..00000000000
--- a/config-model/src/test/examples/indexing_extra_field_input_extra_field.sd
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-search indexing_extra_field_input_extra_field {
- document indexing_extra_field_input_extra_field {
-
- }
- field foo type string {
-
- }
- field bar type string {
- indexing: input bar | index
- }
-}
diff --git a/config-model/src/test/examples/indexing_extra_field_input_implicit.sd b/config-model/src/test/examples/indexing_extra_field_input_implicit.sd
deleted file mode 100644
index 8aff3284ce3..00000000000
--- a/config-model/src/test/examples/indexing_extra_field_input_implicit.sd
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-search indexing_extra_field_input_implicit {
- document indexing_extra_field_input_implicit {
-
- }
- field foo type string {
- indexing: index
- }
-}
diff --git a/config-model/src/test/examples/indexing_extra_field_input_null.sd b/config-model/src/test/examples/indexing_extra_field_input_null.sd
deleted file mode 100644
index c4600fa680a..00000000000
--- a/config-model/src/test/examples/indexing_extra_field_input_null.sd
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-search indexing_extra_field_input_null {
- document indexing_extra_field_input_null {
-
- }
- field foo type string {
- indexing: input foo | index
- }
-}
diff --git a/config-model/src/test/examples/indexing_extra_field_input_self.sd b/config-model/src/test/examples/indexing_extra_field_input_self.sd
deleted file mode 100644
index 36dbae21449..00000000000
--- a/config-model/src/test/examples/indexing_extra_field_input_self.sd
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-search indexing_extra_field_input_self {
- document indexing_extra_field_input_self {
-
- }
- field foo type string {
- indexing: input foo | index
- }
-}
diff --git a/config-model/src/test/java/com/yahoo/schema/processing/IndexingInputsTestCase.java b/config-model/src/test/java/com/yahoo/schema/processing/IndexingInputsTestCase.java
index 0e6744ba8f9..675168ca6c2 100644
--- a/config-model/src/test/java/com/yahoo/schema/processing/IndexingInputsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/schema/processing/IndexingInputsTestCase.java
@@ -6,43 +6,104 @@ import com.yahoo.schema.parser.ParseException;
import com.yahoo.yolean.Exceptions;
import org.junit.jupiter.api.Test;
-import java.io.IOException;
-
-import static com.yahoo.schema.processing.AssertSearchBuilder.assertBuildFails;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.fail;
/**
* @author Simon Thoresen Hult
+ * @author bratseth
*/
public class IndexingInputsTestCase {
@Test
- void requireThatExtraFieldInputExtraFieldThrows() throws IOException, ParseException {
- assertBuildFails("src/test/examples/indexing_extra_field_input_extra_field.sd",
- "For schema 'indexing_extra_field_input_extra_field', field 'bar': Indexing script refers " +
- "to field 'bar' which is neither a field in document type " +
- "'indexing_extra_field_input_extra_field' nor a mutable attribute");
+ void requireThatExtraFieldInputExtraFieldThrows() throws ParseException {
+ try {
+ var schema = """
+ search indexing_extra_field_input_extra_field {
+ document indexing_extra_field_input_extra_field {
+ }
+ field foo type string {
+ }
+ field bar type string {
+ indexing: input bar | index
+ }
+ }
+ """;
+ ApplicationBuilder.createFromString(schema);
+ fail("Expected exception");
+ }
+ catch (IllegalArgumentException e) {
+ assertEquals("For schema 'indexing_extra_field_input_extra_field', field 'bar': Indexing script refers " +
+ "to field 'bar' which is neither a field in document type " +
+ "'indexing_extra_field_input_extra_field' nor a mutable attribute",
+ Exceptions.toMessageString(e));
+ }
}
@Test
- void requireThatExtraFieldInputImplicitThrows() throws IOException, ParseException {
- assertBuildFails("src/test/examples/indexing_extra_field_input_implicit.sd",
- "For schema 'indexing_extra_field_input_implicit', field 'foo': " +
- "For expression '{ tokenize normalize stem:\"BEST\" | index foo; }': Expected string input, but no input is specified");
+ void requireThatExtraFieldInputImplicitThrows() throws ParseException {
+ try {
+ var schema = """
+ search indexing_extra_field_input_implicit {
+ document indexing_extra_field_input_implicit {
+ }
+ field foo type string {
+ indexing: index
+ }
+ }
+ """;
+ ApplicationBuilder.createFromString(schema);
+ fail("Expected exception");
+ }
+ catch (IllegalArgumentException e) {
+ assertEquals("For schema 'indexing_extra_field_input_implicit', field 'foo': " +
+ "For expression '{ tokenize normalize stem:\"BEST\" | index foo; }': Expected string input, but no input is specified",
+ Exceptions.toMessageString(e));
+ }
}
@Test
- void requireThatExtraFieldInputNullThrows() throws IOException, ParseException {
- assertBuildFails("src/test/examples/indexing_extra_field_input_null.sd",
- "For schema 'indexing_extra_field_input_null', field 'foo': Indexing script refers to field " +
- "'foo' which is neither a field in document type 'indexing_extra_field_input_null' nor a mutable attribute");
+ void requireThatExtraFieldInputNullThrows() throws ParseException {
+ try {
+ var schema = """
+ search indexing_extra_field_input_null {
+ document indexing_extra_field_input_null {
+ }
+ field foo type string {
+ indexing: input foo | index
+ }
+ }
+ """;
+ ApplicationBuilder.createFromString(schema);
+ fail("Expected exception");
+ }
+ catch (IllegalArgumentException e) {
+ assertEquals("For schema 'indexing_extra_field_input_null', field 'foo': Indexing script refers to field " +
+ "'foo' which is neither a field in document type 'indexing_extra_field_input_null' nor a mutable attribute",
+ Exceptions.toMessageString(e));
+ }
}
@Test
- void requireThatExtraFieldInputSelfThrows() throws IOException, ParseException {
- assertBuildFails("src/test/examples/indexing_extra_field_input_self.sd",
- "For schema 'indexing_extra_field_input_self', field 'foo': Indexing script refers to field " +
- "'foo' which is neither a field in document type 'indexing_extra_field_input_self' nor a mutable attribute");
+ void requireThatExtraFieldInputSelfThrows() throws ParseException {
+ try {
+ var schema = """
+ search indexing_extra_field_input_self {
+ document indexing_extra_field_input_self {
+ }
+ field foo type string {
+ indexing: input foo | index
+ }
+ }
+ """;
+ ApplicationBuilder.createFromString(schema);
+ fail("Expected exception");
+ }
+ catch (IllegalArgumentException e) {
+ assertEquals("For schema 'indexing_extra_field_input_self', field 'foo': Indexing script refers to field " +
+ "'foo' which is neither a field in document type 'indexing_extra_field_input_self' nor a mutable attribute",
+ Exceptions.toMessageString(e));
+ }
}
@Test
@@ -92,6 +153,7 @@ public class IndexingInputsTestCase {
}
""";
ApplicationBuilder.createFromString(schema);
+ fail("Expected exception");
}
catch (IllegalArgumentException e) {
assertEquals("For schema 'test', field 'derived1': For expression '{ attribute derived1; }': " +