From bb0b36b86f841ec6340fe6e727ed2ea9db1c2d64 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Mon, 4 Jan 2016 18:58:19 +0000 Subject: Capture "this" references --- src/test/java/org/zwobble/couscous/tests/CompilerTests.java | 3 --- .../couscous/tests/frontends/java/FreeVariablesTests.java | 9 +++++---- 2 files changed, 5 insertions(+), 7 deletions(-) (limited to 'src/test/java') diff --git a/src/test/java/org/zwobble/couscous/tests/CompilerTests.java b/src/test/java/org/zwobble/couscous/tests/CompilerTests.java index 56d989c..6b0bf5f 100644 --- a/src/test/java/org/zwobble/couscous/tests/CompilerTests.java +++ b/src/test/java/org/zwobble/couscous/tests/CompilerTests.java @@ -1,6 +1,5 @@ package org.zwobble.couscous.tests; -import org.junit.Ignore; import org.junit.Test; import org.zwobble.couscous.ast.TypeName; import org.zwobble.couscous.values.PrimitiveValue; @@ -14,7 +13,6 @@ import java.nio.file.Path; import java.util.List; import static java.util.Arrays.asList; -import static java.util.Collections.emptyList; import static org.junit.Assert.assertEquals; import static org.zwobble.couscous.tests.util.ExtraFiles.deleteRecursively; import static org.zwobble.couscous.values.PrimitiveValues.value; @@ -124,7 +122,6 @@ public abstract class CompilerTests { } @Test - @Ignore("WIP") public void lambdasWithThisCapture() throws Exception { assertEquals( value(42), diff --git a/src/test/java/org/zwobble/couscous/tests/frontends/java/FreeVariablesTests.java b/src/test/java/org/zwobble/couscous/tests/frontends/java/FreeVariablesTests.java index afded63..7cf349d 100644 --- a/src/test/java/org/zwobble/couscous/tests/frontends/java/FreeVariablesTests.java +++ b/src/test/java/org/zwobble/couscous/tests/frontends/java/FreeVariablesTests.java @@ -1,6 +1,7 @@ package org.zwobble.couscous.tests.frontends.java; import org.junit.Test; +import org.zwobble.couscous.ast.ReferenceNode; import org.zwobble.couscous.ast.VariableDeclaration; import org.zwobble.couscous.tests.TestIds; import org.zwobble.couscous.values.StringValue; @@ -21,14 +22,14 @@ public class FreeVariablesTests { @Test public void referenceIsFreeIfThereIsNoAssociatedDeclaration() { VariableDeclaration declaration = var(TestIds.ANY_ID, "[name]", StringValue.REF); - List freeVariables = findFreeVariables(asList(reference(declaration))); - assertEquals(asList(declaration), freeVariables); + List freeVariables = findFreeVariables(asList(reference(declaration))); + assertEquals(asList(reference(declaration)), freeVariables); } @Test public void referenceIsNotFreeIfIsDeclaredAsArgument() { VariableDeclaration declaration = var(TestIds.ANY_ID, "[name]", StringValue.REF); - List freeVariables = findFreeVariables( + List freeVariables = findFreeVariables( asList(formalArg(declaration), reference(declaration))); assertEquals(emptyList(), freeVariables); } @@ -36,7 +37,7 @@ public class FreeVariablesTests { @Test public void referenceIsNotFreeIfIsReferenceToLocalDefinedInBody() { VariableDeclaration declaration = var(TestIds.ANY_ID, "[name]", StringValue.REF); - List freeVariables = findFreeVariables( + List freeVariables = findFreeVariables( asList( localVariableDeclaration(declaration, literal("[value]")), reference(declaration))); -- cgit v1.2.3