aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/test/java/com/yahoo/schema/expressiontransforms/BooleanExpressionTransformerTestCase.java
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2022-09-21 08:44:29 +0200
committerGitHub <noreply@github.com>2022-09-21 08:44:29 +0200
commit9f4fcf60d0cac9dfcc2da8f74640483ec5b7629f (patch)
tree09b0c9d0f898eac040c8d10be36d09a22d7a8f95 /config-model/src/test/java/com/yahoo/schema/expressiontransforms/BooleanExpressionTransformerTestCase.java
parent1be14007d58614d3ca44bde00100c0215f11218d (diff)
Revert "Revert "Revert "Short circuit boolean expressions"""
Diffstat (limited to 'config-model/src/test/java/com/yahoo/schema/expressiontransforms/BooleanExpressionTransformerTestCase.java')
-rw-r--r--config-model/src/test/java/com/yahoo/schema/expressiontransforms/BooleanExpressionTransformerTestCase.java57
1 files changed, 0 insertions, 57 deletions
diff --git a/config-model/src/test/java/com/yahoo/schema/expressiontransforms/BooleanExpressionTransformerTestCase.java b/config-model/src/test/java/com/yahoo/schema/expressiontransforms/BooleanExpressionTransformerTestCase.java
deleted file mode 100644
index 71d0657c701..00000000000
--- a/config-model/src/test/java/com/yahoo/schema/expressiontransforms/BooleanExpressionTransformerTestCase.java
+++ /dev/null
@@ -1,57 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.schema.expressiontransforms;
-
-import com.yahoo.searchlib.rankingexpression.RankingExpression;
-import com.yahoo.searchlib.rankingexpression.evaluation.MapContext;
-import com.yahoo.searchlib.rankingexpression.evaluation.MapTypeContext;
-import com.yahoo.searchlib.rankingexpression.transform.TransformContext;
-import org.junit.jupiter.api.Test;
-import static org.junit.jupiter.api.Assertions.assertEquals;
-
-import java.util.Map;
-
-/**
- * @author bratseth
- */
-public class BooleanExpressionTransformerTestCase {
-
- @Test
- public void testTransformer() throws Exception {
- assertTransformed("if (a, b, false)", "a && b");
- assertTransformed("if (a, true, b)", "a || b");
- assertTransformed("if (a, true, b + c)", "a || b + c");
- assertTransformed("if (c + a, true, b)", "c + a || b");
- assertTransformed("if (c + a, true, b + c)", "c + a || b + c");
- assertTransformed("if (a + b, true, if (c - d * e, f, false))", "a + b || c - d * e && f");
- assertTransformed("if (a, true, if (b, c, false))", "a || b && c");
- assertTransformed("if (a + b, true, if (if (c, d, false), e * f - g, false))", "a + b || c && d && e * f - g");
- assertTransformed("if(1 - 1, true, 1 - 1)", "1 - 1 || 1 - 1");
- }
-
- @Test
- public void testIt() throws Exception {
- assertTransformed("if(1 - 1, true, 1 - 1)", "1 - 1 || 1 - 1");
- }
-
- private void assertTransformed(String expected, String input) throws Exception {
- var transformedExpression = new BooleanExpressionTransformer()
- .transform(new RankingExpression(input),
- new TransformContext(Map.of(), new MapTypeContext()));
-
- assertEquals(new RankingExpression(expected), transformedExpression, "Transformed as expected");
-
- MapContext context = contextWithSingleLetterVariables();
- var inputExpression = new RankingExpression(input);
- assertEquals(inputExpression.evaluate(new MapContext()).asBoolean(),
- transformedExpression.evaluate(new MapContext()).asBoolean(),
- "Transform and original input are equivalent");
- }
-
- private MapContext contextWithSingleLetterVariables() {
- var context = new MapContext();
- for (int i = 0; i < 26; i++)
- context.put(Character.toString(i + 97), Math.floorMod(i, 2));
- return context;
- }
-
-}