diff options
author | Jon Bratseth <bratseth@verizonmedia.com> | 2019-06-02 13:25:45 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@verizonmedia.com> | 2019-06-02 13:25:45 +0200 |
commit | c25c8a52e2328bcff2f5a35496e7568ee5a7c752 (patch) | |
tree | cd624363ad22b7a2b6a76e41bd27c0cd7f5169d7 /model-integration/src/test | |
parent | e9e5a422c0aa6364c3c5f7b9da53e9fcf9a5f0f8 (diff) |
Vespa global model import
Diffstat (limited to 'model-integration/src/test')
4 files changed, 40 insertions, 4 deletions
diff --git a/model-integration/src/test/java/ai/vespa/rankingexpression/importer/vespa/VespaImportTestCase.java b/model-integration/src/test/java/ai/vespa/rankingexpression/importer/vespa/VespaImportTestCase.java index 1be2b7a4183..4c8890f6476 100644 --- a/model-integration/src/test/java/ai/vespa/rankingexpression/importer/vespa/VespaImportTestCase.java +++ b/model-integration/src/test/java/ai/vespa/rankingexpression/importer/vespa/VespaImportTestCase.java @@ -2,8 +2,11 @@ package ai.vespa.rankingexpression.importer.vespa; import ai.vespa.rankingexpression.importer.ImportedModel; +import ai.vespa.rankingexpression.importer.configmodelview.ImportedMlFunction; import org.junit.Test; +import java.util.List; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; @@ -25,8 +28,24 @@ public class VespaImportTestCase { assertEquals("tensor(x[3]):{{x:0}:0.5,{x:1}:1.5,{x:2}:2.5}", model.smallConstants().get("constant1")); assertEquals("tensor():{3.0}", model.smallConstants().get("constant2")); - assertEquals("max(reduce(input1 * input2, sum, name),x) * constant2", - model.expressions().get("foo").getRoot().toString()); + assertEquals(1, model.largeConstants().size()); + assertEquals("tensor(x[3]):{{x:0}:0.5,{x:1}:1.5,{x:2}:2.5}", model.largeConstants().get("constant1asLarge")); + + assertEquals(2, model.expressions().size()); + assertEquals("max(reduce(input1 * input2, sum, name) * constant1,x) * constant2", + model.expressions().get("foo1").getRoot().toString()); + assertEquals("max(reduce(input1 * input2, sum, name) * constant1asLarge,x) * constant2", + model.expressions().get("foo2").getRoot().toString()); + + List<ImportedMlFunction> functions = model.outputExpressions(); + assertEquals(2, functions.size()); + ImportedMlFunction foo1Function = functions.get(0); + assertEquals(2, foo1Function.arguments().size()); + assertTrue(foo1Function.arguments().contains("input1")); + assertTrue(foo1Function.arguments().contains("input2")); + assertEquals(2, foo1Function.argumentTypes().size()); + assertEquals("tensor(name{},x[3])", foo1Function.argumentTypes().get("input1")); + assertEquals("tensor(x[3])", foo1Function.argumentTypes().get("input2")); } @Test diff --git a/model-integration/src/test/java/ai/vespa/rankingexpression/importer/xgboost/XGBoostImportTestCase.java b/model-integration/src/test/java/ai/vespa/rankingexpression/importer/xgboost/XGBoostImportTestCase.java index 67a3b17255c..6d54b63db4b 100644 --- a/model-integration/src/test/java/ai/vespa/rankingexpression/importer/xgboost/XGBoostImportTestCase.java +++ b/model-integration/src/test/java/ai/vespa/rankingexpression/importer/xgboost/XGBoostImportTestCase.java @@ -22,6 +22,7 @@ public class XGBoostImportTestCase { assertNotNull(expression); assertEquals("if (f29 < -0.1234567, if (f56 < -0.242398, 1.71218, -1.70044), if (f109 < 0.8723473, -1.94071, 1.85965)) + if (f60 < -0.482947, if (f29 < -4.2387498, 0.784718, -0.96853), -6.23624)", expression.getRoot().toString()); + assertEquals(1, model.outputExpressions().size()); } } diff --git a/model-integration/src/test/models/vespa/constant1asLarge.json b/model-integration/src/test/models/vespa/constant1asLarge.json new file mode 100644 index 00000000000..d2944d255af --- /dev/null +++ b/model-integration/src/test/models/vespa/constant1asLarge.json @@ -0,0 +1,7 @@ +{ + "cells": [ + { "address": { "x": "0" }, "value": 0.5 }, + { "address": { "x": "1" }, "value": 1.5 }, + { "address": { "x": "2" }, "value": 2.5 } + ] +}
\ No newline at end of file diff --git a/model-integration/src/test/models/vespa/example.model b/model-integration/src/test/models/vespa/example.model index c0ea461db09..9579be4e44c 100644 --- a/model-integration/src/test/models/vespa/example.model +++ b/model-integration/src/test/models/vespa/example.model @@ -9,8 +9,17 @@ model example { constant2: 3.0 } - function foo() { - expression: max(sum(input1 * input2, name), x) * constant2 + constant constant1asLarge { + type: tensor(x[3]) + file: constant1asLarge.json + } + + function foo1() { + expression: max(sum(input1 * input2, name) * constant1, x) * constant2 + } + + function foo2() { + expression: max(sum(input1 * input2, name) * constant1asLarge, x) * constant2 } }
\ No newline at end of file |