aboutsummaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java8
-rw-r--r--src/test/java/org/zwobble/couscous/tests/backends/python/PythonMethodRunner.java4
2 files changed, 12 insertions, 0 deletions
diff --git a/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java b/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java
index c4a3538..4eb925a 100644
--- a/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java
@@ -13,6 +13,14 @@ import lombok.val;
public abstract class BackendEvalTests {
@Test
+ public void canEvaluateLiterals() {
+ assertEquals(value("hello"), evalExpression(literal("hello")));
+ assertEquals(value(true), evalExpression(literal(true)));
+ assertEquals(value(false), evalExpression(literal(false)));
+ assertEquals(value(42), evalExpression(literal(42)));
+ }
+
+ @Test
public void whenConditionIsTrueThenValueOfConditionalTernaryIsTrueBranch() {
val result = evalExpression(new TernaryConditionalNode(literal(true), literal("T"), literal("F")));
assertEquals(value("T"), result);
diff --git a/src/test/java/org/zwobble/couscous/tests/backends/python/PythonMethodRunner.java b/src/test/java/org/zwobble/couscous/tests/backends/python/PythonMethodRunner.java
index fb0e880..549fb51 100644
--- a/src/test/java/org/zwobble/couscous/tests/backends/python/PythonMethodRunner.java
+++ b/src/test/java/org/zwobble/couscous/tests/backends/python/PythonMethodRunner.java
@@ -67,6 +67,10 @@ public class PythonMethodRunner implements MethodRunner {
return PrimitiveValues.UNIT;
} else if (output.startsWith("'")) {
return value(output.substring(1, output.length() - 1));
+ } else if (output.equals("True")) {
+ return value(true);
+ } else if (output.equals("False")) {
+ return value(false);
} else {
return value(parseInt(output));
}