diff options
author | Jon Bratseth <bratseth@verizonmedia.com> | 2019-10-23 16:28:51 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@verizonmedia.com> | 2019-10-23 16:28:51 +0200 |
commit | 68249a1c7541c9c5e1b1e43afacf6118f2d22689 (patch) | |
tree | b0627fab0557be8020d64f6e8fb7f5cfe843c6b6 /model-evaluation/src/test | |
parent | 51d8e8546649327cef3b892090c1631a603a4949 (diff) |
Add dynamically settable default
Diffstat (limited to 'model-evaluation/src/test')
-rw-r--r-- | model-evaluation/src/test/java/ai/vespa/models/evaluation/ModelsEvaluatorTest.java | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/model-evaluation/src/test/java/ai/vespa/models/evaluation/ModelsEvaluatorTest.java b/model-evaluation/src/test/java/ai/vespa/models/evaluation/ModelsEvaluatorTest.java index e8620670dd6..4e31dd89e6a 100644 --- a/model-evaluation/src/test/java/ai/vespa/models/evaluation/ModelsEvaluatorTest.java +++ b/model-evaluation/src/test/java/ai/vespa/models/evaluation/ModelsEvaluatorTest.java @@ -7,7 +7,6 @@ import com.yahoo.filedistribution.fileacquirer.MockFileAcquirer; import com.yahoo.path.Path; import com.yahoo.searchlib.rankingexpression.ExpressionFunction; import com.yahoo.searchlib.rankingexpression.RankingExpression; -import com.yahoo.searchlib.rankingexpression.rule.ReferenceNode; import com.yahoo.tensor.Tensor; import com.yahoo.tensor.TensorType; import com.yahoo.vespa.config.search.RankProfilesConfig; @@ -19,6 +18,7 @@ import java.util.ArrayList; import java.util.List; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; /** * @author bratseth @@ -36,6 +36,30 @@ public class ModelsEvaluatorTest { assertEquals(32.0, function.evaluate().asDouble(), delta); } + /** Tests a function defined as 4 * (var1 + var2) */ + @Test + public void testSettingDefaultVariableValue() { + ModelsEvaluator models = createModels("src/test/resources/config/rankexpression/"); + + { + FunctionEvaluator function = models.evaluatorOf("macros", "secondphase"); + assertTrue(Double.isNaN(function.evaluate().asDouble())); + } + + { + FunctionEvaluator function = models.evaluatorOf("macros", "secondphase"); + function.setUnboundValue(5); + assertEquals(40.0, function.evaluate().asDouble(), delta); + } + + { + FunctionEvaluator function = models.evaluatorOf("macros", "secondphase"); + function.setUnboundValue(5); + function.bind("match", 3); + assertEquals(32.0, function.evaluate().asDouble(), delta); + } + } + @Test public void testBindingValidation() { List<ExpressionFunction> functions = new ArrayList<>(); |