summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/RuntimeTest.java36
-rw-r--r--luni/src/test/java/libcore/java/lang/OldRuntimeTest.java26
2 files changed, 23 insertions, 39 deletions
diff --git a/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/RuntimeTest.java b/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/RuntimeTest.java
index 08a4fa9..17f822d 100644
--- a/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/RuntimeTest.java
+++ b/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/RuntimeTest.java
@@ -19,6 +19,8 @@ package org.apache.harmony.tests.java.lang;
import java.io.IOException;
import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.List;
import java.util.Vector;
public class RuntimeTest extends junit.framework.TestCase {
@@ -82,14 +84,6 @@ public class RuntimeTest extends junit.framework.TestCase {
}
/**
- * java.lang.Runtime#freeMemory()
- */
- public void test_freeMemory() {
- // Test for method long java.lang.Runtime.freeMemory()
- assertTrue("freeMemory returned nonsense value", r.freeMemory() > 0);
- }
-
- /**
* java.lang.Runtime#gc()
*/
public void test_gc() {
@@ -142,12 +136,28 @@ public class RuntimeTest extends junit.framework.TestCase {
}
/**
- * java.lang.Runtime#totalMemory()
+ * java.lang.Runtime#freeMemory() / java.lang.Runtime#totalMemory() /
+ * java.lang.Runtime#maxMemory()
*/
- public void test_totalMemory() {
- // Test for method long java.lang.Runtime.totalMemory()
- assertTrue("totalMemory returned nonsense value", r.totalMemory() >= r
- .freeMemory());
+ public void test_memory() {
+ assertTrue("freeMemory <= 0", r.freeMemory() > 0);
+ assertTrue("totalMemory() < freeMemory()", r.totalMemory() >= r.freeMemory());
+ assertTrue("maxMemory() < totalMemory()", r.maxMemory() >= r.totalMemory());
+ }
+
+ public void test_freeMemory() {
+ // Heap might grow or do GC at any time, so we can't really test a lot. Hence we are just
+ // doing some basic sanity checks here.
+ long freeBefore = r.freeMemory();
+ List<byte[]> arrays = new ArrayList<byte[]>();
+ for (int i = 1; i < 10; i++) {
+ arrays.add(new byte[10000]);
+ }
+ long freeAfter = r.freeMemory();
+
+ // If totalMemory() has grown/shrunk freeMemory() might have gone down or up, but the
+ // freeMemory is unlikely to stay the same.
+ assertTrue("free memory must change with allocations", freeAfter != freeBefore);
}
public RuntimeTest() {
diff --git a/luni/src/test/java/libcore/java/lang/OldRuntimeTest.java b/luni/src/test/java/libcore/java/lang/OldRuntimeTest.java
index 0926569..294cea2 100644
--- a/luni/src/test/java/libcore/java/lang/OldRuntimeTest.java
+++ b/luni/src/test/java/libcore/java/lang/OldRuntimeTest.java
@@ -34,28 +34,6 @@ public class OldRuntimeTest extends junit.framework.TestCase {
InputStream is;
- public void test_freeMemory() {
- // Heap might grow or do GC at any time,
- // so we can't really test a lot. Hence
- // we are just doing some basic sanity
- // checks here.
- assertTrue("must have some free memory",
- r.freeMemory() > 0);
-
- assertTrue("must not exceed total memory",
- r.freeMemory() < r.totalMemory());
-
- long before = r.totalMemory() - r.freeMemory();
- Vector<byte[]> v = new Vector<byte[]>();
- for (int i = 1; i < 10; i++) {
- v.addElement(new byte[10000]);
- }
- long after = r.totalMemory() - r.freeMemory();
-
- assertTrue("free memory must change with allocations",
- after != before);
- }
-
public void test_getRuntime() {
// Test for method java.lang.Runtime java.lang.Runtime.getRuntime()
assertNotNull(Runtime.getRuntime());
@@ -451,10 +429,6 @@ public class OldRuntimeTest extends junit.framework.TestCase {
}
}
- public void test_maxMemory() {
- assertTrue(Runtime.getRuntime().maxMemory() < Long.MAX_VALUE);
- }
-
public void test_traceInstructions() {
Runtime.getRuntime().traceInstructions(false);
Runtime.getRuntime().traceInstructions(true);