# HG changeset patch # User Bernhard Urban # Date 1366193070 -7200 # Node ID a653da473eab30663a4387d58bcf45ba8e37e4b4 # Parent 0b7d9bcc0f443110916f7f88945faacd764ce7fe hasNoFinalizer-assumption: check if assumption is recorded diff -r 0b7d9bcc0f44 -r a653da473eab graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/FinalizableSubclassTest.java --- a/graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/FinalizableSubclassTest.java Wed Apr 17 12:04:04 2013 +0200 +++ b/graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/FinalizableSubclassTest.java Wed Apr 17 12:04:30 2013 +0200 @@ -27,6 +27,8 @@ import org.junit.*; import com.oracle.graal.api.code.*; +import com.oracle.graal.api.code.Assumptions.Assumption; +import com.oracle.graal.api.code.Assumptions.NoFinalizableSubclass; import com.oracle.graal.api.meta.*; import com.oracle.graal.java.*; import com.oracle.graal.nodes.*; @@ -37,20 +39,15 @@ public class FinalizableSubclassTest extends GraalCompilerTest { public static class NoFinalizerEver { - } public static class NoFinalizerYet { - } public static class WithFinalizer extends NoFinalizerYet { - static int someCounter = 0; - @Override protected void finalize() throws Throwable { - someCounter++; super.finalize(); } } @@ -72,6 +69,13 @@ Assumptions assumptions = new Assumptions(optimistic); StructuredGraph graph = parseAndProcess(cl, assumptions); Assert.assertTrue(graph.getNodes().filter(RegisterFinalizerNode.class).count() == (shouldContainFinalizer ? 1 : 0)); + int noFinalizerAssumption = 0; + for (Assumption a : assumptions) { + if (a instanceof NoFinalizableSubclass) { + noFinalizerAssumption++; + } + } + Assert.assertTrue(noFinalizerAssumption == (shouldContainFinalizer ? 0 : 1)); } @Test