summaryrefslogtreecommitdiffstats
path: root/config-model/src/test/java/com/yahoo/schema/derived
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2024-01-12 16:49:02 +0100
committerHenning Baldersheim <balder@yahoo-inc.com>2024-01-12 16:49:02 +0100
commit4825303a9cc973984825e201a8a470b055853d4c (patch)
tree9b24953c2103a12a4e50c35b332e85969ce9fda7 /config-model/src/test/java/com/yahoo/schema/derived
parenta5df6cac7248c074b381b64d8d6f064f5ff07ef9 (diff)
Drop tokenize expressions from ilscript for streaming mode.
Diffstat (limited to 'config-model/src/test/java/com/yahoo/schema/derived')
-rw-r--r--config-model/src/test/java/com/yahoo/schema/derived/IndexingScriptTestCase.java40
-rw-r--r--config-model/src/test/java/com/yahoo/schema/derived/VsmFieldsTestCase.java2
2 files changed, 41 insertions, 1 deletions
diff --git a/config-model/src/test/java/com/yahoo/schema/derived/IndexingScriptTestCase.java b/config-model/src/test/java/com/yahoo/schema/derived/IndexingScriptTestCase.java
new file mode 100644
index 00000000000..6e86a567e68
--- /dev/null
+++ b/config-model/src/test/java/com/yahoo/schema/derived/IndexingScriptTestCase.java
@@ -0,0 +1,40 @@
+package com.yahoo.schema.derived;
+
+import com.yahoo.document.DataType;
+import com.yahoo.schema.Schema;
+import com.yahoo.schema.document.MatchType;
+import com.yahoo.schema.document.Matching;
+import com.yahoo.schema.document.SDField;
+import com.yahoo.schema.document.TemporarySDField;
+import com.yahoo.vespa.configdefinition.IlscriptsConfig;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+public class IndexingScriptTestCase {
+
+ private static IlscriptsConfig ilscriptsConfig(Schema schema, boolean isStreaming) {
+ IndexingScript script = new IndexingScript(schema, isStreaming);
+ IlscriptsConfig.Builder cfgBuilder = new IlscriptsConfig.Builder();
+ script.getConfig(cfgBuilder);
+ return cfgBuilder.build();
+ }
+
+ private void verifyIndexingScript(boolean isStreaming) {
+ Schema schema = VsmFieldsTestCase.createSchema();
+ SDField field = new TemporarySDField(schema.getDocument(), "f", DataType.STRING);
+ field.parseIndexingScript("{ tokenize | index }");
+ field.setMatching(new Matching(MatchType.TEXT));
+ schema.getDocument().addField(field);
+ IlscriptsConfig cfg = ilscriptsConfig(schema, isStreaming);
+ assertEquals(1, cfg.ilscript().size());
+ assertEquals(2, cfg.ilscript(0).content().size());
+ String indexing = isStreaming ? "index" : "tokenize | index";
+ assertEquals("clear_state | guard { " + indexing + "; }", cfg.ilscript(0).content(0));
+ }
+ @Test
+ void testThatTokenizeIsIgnoredFromStreaming() {
+ verifyIndexingScript(false);
+ verifyIndexingScript(true);
+ }
+}
diff --git a/config-model/src/test/java/com/yahoo/schema/derived/VsmFieldsTestCase.java b/config-model/src/test/java/com/yahoo/schema/derived/VsmFieldsTestCase.java
index e469b80ab40..042feeb5f46 100644
--- a/config-model/src/test/java/com/yahoo/schema/derived/VsmFieldsTestCase.java
+++ b/config-model/src/test/java/com/yahoo/schema/derived/VsmFieldsTestCase.java
@@ -23,7 +23,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
*/
public class VsmFieldsTestCase {
- private static Schema createSchema() {
+ static Schema createSchema() {
Schema schema = new Schema("test", MockApplicationPackage.createEmpty(), new MockFileRegistry(), new TestableDeployLogger(), new TestProperties());
var sdoc = new SDDocumentType("test");
schema.addDocument(sdoc);