aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-04-17 13:49:11 +0100
committerMichael Williamson <mike@zwobble.org>2016-04-17 13:49:11 +0100
commit8ef169c241190b049fcc7e27d107fa6b45dde9ff (patch)
treeec11ff5cf85d9e094503d677965177e2c888c085 /src/test
parent4cdaa7ff4bc8a617bde4f3f3753a3e88459612f7 (diff)
Add parsing of throw statements
Diffstat (limited to 'src/test')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java b/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java
index f3ce5a1..9bf8bcc 100644
--- a/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java
@@ -16,6 +16,7 @@ import static org.junit.Assert.assertThat;
import static org.zwobble.couscous.ast.AnnotationNode.annotation;
import static org.zwobble.couscous.ast.AssignmentNode.assign;
import static org.zwobble.couscous.ast.AssignmentNode.assignStatement;
+import static org.zwobble.couscous.ast.ConstructorCallNode.constructorCall;
import static org.zwobble.couscous.ast.ExpressionStatementNode.expressionStatement;
import static org.zwobble.couscous.ast.FieldAccessNode.fieldAccess;
import static org.zwobble.couscous.ast.FormalTypeParameterNode.formalTypeParameter;
@@ -27,6 +28,7 @@ import static org.zwobble.couscous.ast.Operations.boxInt;
import static org.zwobble.couscous.ast.Operations.integerAdd;
import static org.zwobble.couscous.ast.ReturnNode.returns;
import static org.zwobble.couscous.ast.ThisReferenceNode.thisReference;
+import static org.zwobble.couscous.ast.ThrowNode.throwNode;
import static org.zwobble.couscous.ast.TypeCoercionNode.typeCoercion;
import static org.zwobble.couscous.ast.VariableReferenceNode.reference;
import static org.zwobble.couscous.ast.WhileNode.whileLoop;
@@ -101,6 +103,14 @@ public class JavaReaderTests {
method.getArguments(),
contains(isFormalArgument("value", typeParameter(expectedMethodIdentifier, "T"))));
}
+
+ @Test
+ public void canReadThrowStatements() {
+ assertEquals(
+ throwNode(
+ constructorCall(ScalarType.of("java.lang.RuntimeException"), list())),
+ readStatement("void", "throw new RuntimeException();"));
+ }
@Test
public void canReadExpressionStatements() {