aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/test/java/com/yahoo/schema
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2024-01-04 11:58:01 +0100
committerTor Egge <Tor.Egge@online.no>2024-01-04 13:37:52 +0100
commitabf6ddb95051163f7c383b989d9148cbef19ab24 (patch)
tree98b87a86dc0cf849db87ed9f57c30685da9373bd /config-model/src/test/java/com/yahoo/schema
parent1f7bfaf60d05e4b55a926b46e10623448ce31308 (diff)
Enable setting max-occurrences in field match.
Diffstat (limited to 'config-model/src/test/java/com/yahoo/schema')
-rw-r--r--config-model/src/test/java/com/yahoo/schema/parser/SchemaParserTestCase.java17
-rw-r--r--config-model/src/test/java/com/yahoo/schema/processing/IndexingScriptRewriterTestCase.java9
2 files changed, 26 insertions, 0 deletions
diff --git a/config-model/src/test/java/com/yahoo/schema/parser/SchemaParserTestCase.java b/config-model/src/test/java/com/yahoo/schema/parser/SchemaParserTestCase.java
index c014f77d59a..5a2dc218da7 100644
--- a/config-model/src/test/java/com/yahoo/schema/parser/SchemaParserTestCase.java
+++ b/config-model/src/test/java/com/yahoo/schema/parser/SchemaParserTestCase.java
@@ -120,6 +120,23 @@ public class SchemaParserTestCase {
assertEquals("onnx(mymodel)", rp1.getGlobalPhaseExpression().get());
}
+ @Test
+ void maxOccurrencesCanBeParsed() throws Exception {
+ String input = joinLines
+ ("schema foo {",
+ " document foo {",
+ " field bar type string {",
+ " indexing: summary | index",
+ " match { max-occurrences: 11 }",
+ " }",
+ " }",
+ "}");
+ ParsedSchema schema = parseString(input);
+ var field = schema.getDocument().getFields().get(0);
+ assertEquals("bar", field.name());
+ assertEquals(11, field.matchSettings().getMaxTermOccurrences().get());
+ }
+
void checkFileParses(String fileName) throws Exception {
var schema = parseFile(fileName);
assertNotNull(schema);
diff --git a/config-model/src/test/java/com/yahoo/schema/processing/IndexingScriptRewriterTestCase.java b/config-model/src/test/java/com/yahoo/schema/processing/IndexingScriptRewriterTestCase.java
index 87e91acfb67..c2cc28ea6b3 100644
--- a/config-model/src/test/java/com/yahoo/schema/processing/IndexingScriptRewriterTestCase.java
+++ b/config-model/src/test/java/com/yahoo/schema/processing/IndexingScriptRewriterTestCase.java
@@ -147,6 +147,15 @@ public class IndexingScriptRewriterTestCase extends AbstractSchemaTestCase {
createPredicateField("test", DataType.PREDICATE, "{ attribute; }", 2, OptionalLong.of(0L), OptionalLong.of(1023L)));
}
+ @Test
+ void requireThatMaxTermOccurrencesIsPropagated() {
+ var field = new SDField("test", DataType.STRING);
+ field.getMatching().maxTermOccurrences(10);
+ field.parseIndexingScript("{ summary | index }");
+ assertIndexingScript("{ input test | tokenize normalize stem:\"BEST\" max-occurrences:10 | summary test | index test; }",
+ field);
+ }
+
private static void assertIndexingScript(String expectedScript, SDField unprocessedField) {
assertEquals(expectedScript,
processField(unprocessedField).toString());