X-Git-Url: http://source.jalview.org/gitweb/?p=jalview.git;a=blobdiff_plain;f=test%2Fjalview%2Fgui%2FFreeUpMemoryTest.java;fp=test%2Fjalview%2Fgui%2FFreeUpMemoryTest.java;h=24697c0763fca3f47998b607eef21beabc9920a9;hp=9b212749bca07fda9d9c8704a9234be18ab4faa8;hb=3609d4b908fa64cab35f2348401baab3347188fc;hpb=2eea4e73351d902cd88923d863e9780fa57a0ee7 diff --git a/test/jalview/gui/FreeUpMemoryTest.java b/test/jalview/gui/FreeUpMemoryTest.java index 9b21274..24697c0 100644 --- a/test/jalview/gui/FreeUpMemoryTest.java +++ b/test/jalview/gui/FreeUpMemoryTest.java @@ -68,13 +68,27 @@ public class FreeUpMemoryTest File f = generateAlignment(); f.deleteOnExit(); + long expectedMin = 35L; + long usedMemoryAtStart=getUsedMemory(); + if (usedMemoryAtStart>expectedMin) + { + System.err.println("used memory before test is "+usedMemoryAtStart+" > "+expectedMin+"MB .. adjusting minimum."); + expectedMin = usedMemoryAtStart; + } doStuffInJalview(f); Desktop.instance.closeAll_actionPerformed(null); - checkUsedMemory(35L); + checkUsedMemory(expectedMin); } + private static long getUsedMemory() + { + long availableMemory = Runtime.getRuntime().totalMemory() / ONE_MB; + long freeMemory = Runtime.getRuntime().freeMemory() / ONE_MB; + long usedMemory = availableMemory - freeMemory; + return usedMemory; + } /** * Requests garbage collection and then checks whether remaining memory in use * is less than the expected value (in Megabytes) @@ -101,10 +115,7 @@ public class FreeUpMemoryTest /* * check used memory is 'reasonably low' */ - long availableMemory = Runtime.getRuntime().totalMemory() / ONE_MB; - long freeMemory = Runtime.getRuntime().freeMemory() / ONE_MB; - long usedMemory = availableMemory - freeMemory; - + long usedMemory = getUsedMemory(); /* * sanity check - fails if any frame was added after * closeAll_actionPerformed