Mercurial > hg > truffle
changeset 22184:6380c7de0159
Verify disposeContext is really called
author | Jaroslav Tulach <jaroslav.tulach@oracle.com> |
---|---|
date | Tue, 22 Sep 2015 12:11:21 +0200 |
parents | 1421041175a7 |
children | b50f3bc4ed37 |
files | truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/vm/ExceptionDuringParsingTest.java truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/vm/ImplicitExplicitExportTest.java |
diffstat | 2 files changed, 8 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/vm/ExceptionDuringParsingTest.java Mon Sep 21 14:05:33 2015 +0200 +++ b/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/vm/ExceptionDuringParsingTest.java Tue Sep 22 12:11:21 2015 +0200 @@ -24,6 +24,7 @@ import com.oracle.truffle.api.impl.Accessor; import com.oracle.truffle.api.source.Source; +import com.oracle.truffle.api.test.vm.ImplicitExplicitExportTest.Ctx; import static com.oracle.truffle.api.test.vm.ImplicitExplicitExportTest.L1; import com.oracle.truffle.api.vm.TruffleVM; import java.io.IOException; @@ -38,6 +39,8 @@ @Test public void canGetAccessToOwnLanguageInstance() throws Exception { + Ctx.disposed.clear(); + TruffleVM vm = TruffleVM.newVM().build(); TruffleVM.Language language = vm.getLanguages().get(L1); assertNotNull("L1 language is defined", language); @@ -50,8 +53,12 @@ assertEquals(ex.getMessage(), "No, no, no!"); } + assertEquals("No dispose yet", 0, Ctx.disposed.size()); + vm.dispose(); + assertEquals("One context disposed", 1, Ctx.disposed.size()); + try { vm.eval(src); fail("Should throw an exception");
--- a/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/vm/ImplicitExplicitExportTest.java Mon Sep 21 14:05:33 2015 +0200 +++ b/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/vm/ImplicitExplicitExportTest.java Tue Sep 22 12:11:21 2015 +0200 @@ -124,7 +124,7 @@ assertEquals("Global symbol is also 43", "43", vm.findGlobalSymbol("ahoj").invoke(null).get()); } - private static final class Ctx { + static final class Ctx { static final Set<Ctx> disposed = new HashSet<>(); final Map<String, String> explicit = new HashMap<>();