summaryrefslogtreecommitdiffstats
path: root/gerrit-server/src/test/java/com/google/gerrit/server/util/BooleanExpressionTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'gerrit-server/src/test/java/com/google/gerrit/server/util/BooleanExpressionTest.java')
-rw-r--r--gerrit-server/src/test/java/com/google/gerrit/server/util/BooleanExpressionTest.java42
1 files changed, 42 insertions, 0 deletions
diff --git a/gerrit-server/src/test/java/com/google/gerrit/server/util/BooleanExpressionTest.java b/gerrit-server/src/test/java/com/google/gerrit/server/util/BooleanExpressionTest.java
new file mode 100644
index 0000000000..357fd7de23
--- /dev/null
+++ b/gerrit-server/src/test/java/com/google/gerrit/server/util/BooleanExpressionTest.java
@@ -0,0 +1,42 @@
+package com.google.gerrit.server.util;
+
+import static org.junit.Assert.*;
+
+import java.text.ParseException;
+import java.util.HashMap;
+
+import org.junit.Test;
+
+public class BooleanExpressionTest {
+
+ @Test
+ public void testEvaluate() {
+
+ try {
+ assertTrue(new BooleanExpression("true && true && true").evaluate(null));
+ assertTrue(new BooleanExpression("true || true || false").evaluate(null));
+ assertTrue(new BooleanExpression("true || false || false").evaluate(null));
+ assertTrue(new BooleanExpression("true || false || true").evaluate(null));
+ assertTrue(new BooleanExpression("false || true || true").evaluate(null));
+ assertTrue(new BooleanExpression("false || true || false").evaluate(null));
+ assertFalse(new BooleanExpression("false || false || false").evaluate(null));
+ assertFalse(new BooleanExpression("false && false || false").evaluate(null));
+ assertFalse(new BooleanExpression("false && false && false").evaluate(null));
+ assertTrue(new BooleanExpression("false && false || true").evaluate(null));
+ assertTrue(new BooleanExpression("false = false").evaluate(null));
+ assertTrue(new BooleanExpression("true = true").evaluate(null));
+ assertFalse(new BooleanExpression("true = false").evaluate(null));
+ assertFalse(new BooleanExpression("false = true").evaluate(null));
+
+ HashMap<String,String> hashMap = new HashMap<String, String>();
+ hashMap.put("SRVW", "-1");
+ hashMap.put("reviewer", "qt_sanity_bot");
+
+ assertTrue(new BooleanExpression("SRVW < 0 || reviewer != qt_sanity_bot").evaluate(hashMap));
+
+ } catch (ParseException e) {
+ fail(e.getMessage());
+ }
+ }
+
+}