--- a/RegressionTests__VMCrashTests.st Wed Aug 09 10:00:57 2017 +0100
+++ b/RegressionTests__VMCrashTests.st Fri Sep 22 12:06:12 2017 +0100
@@ -144,6 +144,44 @@
"Modified: / 24-06-2016 / 00:41:29 / jv"
!
+test_newspace_resize
+
+ <timeout: 120> "2min"
+ <spawn: true>
+
+ | newSize newLimit holder |
+
+ newSize := ObjectMemory newSpaceSize.
+ [
+ ObjectMemory scavenge.
+ newLimit := (ObjectMemory newSpaceSize * 0.9) rounded.
+
+ "/ Fill in new space so it's 90% full, no garbage.
+ holder := OrderedCollection new.
+ [ ObjectMemory newSpaceUsed < newLimit ] whileTrue:[
+ holder add: (Array new: 100).
+ ].
+ "/ Grow the new space to two times the current size.
+ ObjectMemory newSpaceSize: 2 * newSize.
+ self assert: (ObjectMemory newSpaceSize >= (2 * newSize)).
+ self assert: (ObjectMemory newSpaceUsed / ObjectMemory newSpaceSize) < 0.5.
+
+ "/ Fill in new space so it's 90% full, no garbage.
+ newLimit := (ObjectMemory newSpaceSize * 0.9) rounded.
+ [ ObjectMemory newSpaceUsed < newLimit ] whileTrue:[
+ holder add: (Array new: 100).
+ ].
+ "/ Grow the new space to two times the current size.
+ ObjectMemory newSpaceSize: newSize.
+ self assert: (ObjectMemory newSpaceSize < (newSize + 4096"page size as tolerance for page aligning")).
+
+ ] ensure:[
+ ObjectMemory newSpaceSize: newSize.
+ ].
+
+ "Created: / 21-09-2017 / 23:16:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
test_stx_libjava_testSuite_inspect
<timeout: 120> "2min"
<spawn: true>