aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org/zwobble
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2015-10-05 18:27:35 +0100
committerMichael Williamson <mike@zwobble.org>2015-10-05 18:27:35 +0100
commit1cfa806548d63fa13925e2116d579ff0b5dee7bc (patch)
tree1a62937d502a86bf9c4f8fe20b0397a46969e740 /src/test/java/org/zwobble
parentbd717883dd37d4e3578c1e46c3dba484b6ad4f79 (diff)
Add support for String::substring to Python backend
Diffstat (limited to 'src/test/java/org/zwobble')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/BackendEvalTests.java11
-rw-r--r--src/test/java/org/zwobble/couscous/tests/interpreter/EvaluatorTests.java11
2 files changed, 11 insertions, 11 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);
}
diff --git a/src/test/java/org/zwobble/couscous/tests/interpreter/EvaluatorTests.java b/src/test/java/org/zwobble/couscous/tests/interpreter/EvaluatorTests.java
index fab65ef..ab134f4 100644
--- a/src/test/java/org/zwobble/couscous/tests/interpreter/EvaluatorTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/interpreter/EvaluatorTests.java
@@ -58,17 +58,6 @@ public class EvaluatorTests extends BackendEvalTests {
}
@Test
- public void canCallMethodWithArgumentsOnBuiltin() {
- val result = eval(emptyEnvironment(),
- methodCall(
- literal("hello"),
- "substring",
- asList(literal(1), literal(4)),
- StringValue.REF));
- assertEquals(new StringInterpreterValue("ell"), result);
- }
-
- @Test
public void errorIfMethodDoesNotExist() {
val exception = assertThrows(NoSuchMethod.class,
() -> eval(emptyEnvironment(),