aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java11
1 files changed, 11 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 c6b7ba2..0554025 100644
--- a/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java
@@ -5,6 +5,7 @@ import org.zwobble.couscous.ast.ExpressionNode;
import org.zwobble.couscous.ast.TernaryConditionalNode;
import org.zwobble.couscous.values.IntegerValue;
import org.zwobble.couscous.values.PrimitiveValue;
+import org.zwobble.couscous.values.StringValue;
import static java.util.Arrays.asList;
import static org.junit.Assert.assertEquals;
@@ -45,5 +46,15 @@ public abstract class BackendEvalTests {
assertEquals(value(5), result);
}
+ @Test
+ public void canCallMethodWithArgumentsOnBuiltin() {
+ val result = evalExpression(methodCall(
+ literal("hello"),
+ "substring",
+ asList(literal(1), literal(4)),
+ StringValue.REF));
+ assertEquals(value("ell"), result);
+ }
+
protected abstract PrimitiveValue evalExpression(ExpressionNode expression);
}