From ca151d1aa03a6ca5855b447cc1f81081388bc720 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Fri, 7 Apr 2017 15:33:35 +0100 Subject: Add test case for nested enums --- .../java/org/zwobble/couscous/tests/CompilerTests.java | 12 ++++++++++++ .../zwobble/couscous/tests/JavaToInterpreterTests.java | 5 +++++ .../org/zwobble/couscous/tests/JavaToPythonTests.java | 7 +++++++ .../java/nested-enum/com/example/NestedEnum.java | 17 +++++++++++++++++ 4 files changed, 41 insertions(+) create mode 100644 src/test/resources/java/nested-enum/com/example/NestedEnum.java diff --git a/src/test/java/org/zwobble/couscous/tests/CompilerTests.java b/src/test/java/org/zwobble/couscous/tests/CompilerTests.java index 838029a..b50e8ef 100644 --- a/src/test/java/org/zwobble/couscous/tests/CompilerTests.java +++ b/src/test/java/org/zwobble/couscous/tests/CompilerTests.java @@ -324,6 +324,18 @@ public abstract class CompilerTests { Types.INT)); } + @Test + public void nestedEnum() throws Exception { + assertEquals( + value(42), + execTestProgram( + "nested-enum", + ScalarType.topLevel("com.example.NestedEnum"), + "value", + list(), + Types.INT)); + } + @Test public void stringAdd() throws Exception { assertEquals(value("42"), evalExpression(Types.STRING, "\"4\" + \"2\"")); diff --git a/src/test/java/org/zwobble/couscous/tests/JavaToInterpreterTests.java b/src/test/java/org/zwobble/couscous/tests/JavaToInterpreterTests.java index 34c637c..d5c5cab 100644 --- a/src/test/java/org/zwobble/couscous/tests/JavaToInterpreterTests.java +++ b/src/test/java/org/zwobble/couscous/tests/JavaToInterpreterTests.java @@ -32,6 +32,11 @@ public class JavaToInterpreterTests extends CompilerTests { public void forEach() throws Exception { } + @Test + @Ignore("WIP") + public void nestedEnum() throws Exception { + } + @Override protected PrimitiveValue execProgram( Path directory, diff --git a/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java b/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java index 8d4ee35..f2d845c 100644 --- a/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java +++ b/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java @@ -1,5 +1,7 @@ package org.zwobble.couscous.tests; +import org.junit.Ignore; +import org.junit.Test; import org.zwobble.couscous.CouscousCompiler; import org.zwobble.couscous.backends.python.PythonBackend; import org.zwobble.couscous.frontends.java.JavaFrontend; @@ -16,6 +18,11 @@ import static org.zwobble.couscous.tests.util.ExtraFiles.deleteRecursively; import static org.zwobble.couscous.util.ExtraLists.list; public class JavaToPythonTests extends CompilerTests { + @Test + @Ignore("WIP") + public void nestedEnum() throws Exception { + } + protected PrimitiveValue execProgram( Path directory, ScalarType type, diff --git a/src/test/resources/java/nested-enum/com/example/NestedEnum.java b/src/test/resources/java/nested-enum/com/example/NestedEnum.java new file mode 100644 index 0000000..924aa86 --- /dev/null +++ b/src/test/resources/java/nested-enum/com/example/NestedEnum.java @@ -0,0 +1,17 @@ +package com.example; + +public class NestedEnum { + public static int value() { + State state = State.ON; + if (state == State.ON) { + return 42; + } else { + return 0; + } + } + + public static enum State { + ON, + OFF + } +} -- cgit v1.2.3