diff options
Diffstat (limited to 'model-evaluation/src/test/java/ai/vespa/models/evaluation/ModelsEvaluatorTest.java')
-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<>(); |