author | Claus Gittinger <cg@exept.de> |
Thu, 14 Apr 2016 19:08:20 +0200 | |
changeset 1393 | 50384f233a0f |
parent 1248 | ab9af85de41a |
child 1447 | 2351db93aa5b |
child 1493 | 8da0d9b56e92 |
permissions | -rw-r--r-- |
1181 | 1 |
"{ Package: 'exept:regression' }" |
2 |
||
3 |
"{ NameSpace: RegressionTests }" |
|
4 |
||
5 |
VMCrashTestCase subclass:#VMCrashTests |
|
6 |
instanceVariableNames:'' |
|
7 |
classVariableNames:'' |
|
8 |
poolDictionaries:'' |
|
9 |
category:'tests-Regression-RuntimeSystem' |
|
10 |
! |
|
11 |
||
12 |
||
13 |
!VMCrashTests methodsFor:'tests - GC'! |
|
14 |
||
1190
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
15 |
iter_java_initialize |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
16 |
<spawn: true> |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
17 |
|
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
18 |
1 to: 100 do:[:i | |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
19 |
Stdout nextPutLine: 'Pass ' , i printString. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
20 |
Java release: JavaRelease JDK7. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
21 |
Java initialize. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
22 |
JavaVM initializeVM. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
23 |
Java flushAllJavaResources. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
24 |
Stdout nextPutLine: 'Full GC...'. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
25 |
Smalltalk garbageCollect. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
26 |
Stdout nextPutLine: 'Pass ' , i printString , '...OK'. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
27 |
]. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
28 |
|
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
29 |
"Created: / 08-09-2014 / 12:33:55 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
30 |
! |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
31 |
|
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
32 |
test_java_initialize |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
33 |
" |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
34 |
Running `JavaVM boot` for long enough used to kill the |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
35 |
VM due to problems in memory managements. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
36 |
|
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
37 |
This testcase runs for 10 minutes a test in separate VM |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
38 |
that 100 times boots and flushes the VM. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
39 |
" |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
40 |
|
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
41 |
<spawn: false> |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
42 |
<timeout: 660> "11min" |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
43 |
|
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
44 |
| timeout deadline iterStart iterStop | |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
45 |
|
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
46 |
timeout := self timeout. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
47 |
deadline := OperatingSystem getMillisecondTime + ((timeout - 60"extra min to cover variance") * 1000). |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
48 |
iterStart := iterStop := 0. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
49 |
[ OperatingSystem getMillisecondTime < (deadline - (iterStop - iterStart)) ] whileTrue:[ |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
50 |
iterStart := OperatingSystem getMillisecondTime. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
51 |
(self class selector: #iter_java_initialize) runCase. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
52 |
iterStop := OperatingSystem getMillisecondTime. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
53 |
]. |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
54 |
|
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
55 |
"Created: / 08-09-2014 / 12:14:46 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
56 |
! |
cf332dfb2334
Added regression test #test_java_initialize
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1181
diff
changeset
|
57 |
|
1181 | 58 |
test_newspace_overflow |
59 |
||
60 |
<timeout: 120> "2min" |
|
1193
4fd89b765c87
Added forgotten annotation <spawn:true> to newspace overflow test
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1190
diff
changeset
|
61 |
<spawn: true> |
1181 | 62 |
|
63 |
| newSize newLimit | |
|
64 |
||
65 |
newSize := ObjectMemory newSpaceSize. |
|
66 |
newLimit := (newSize * 0.9) rounded. |
|
67 |
"/ Allocate some garbage to fill in new space... |
|
68 |
[ ObjectMemory newSpaceUsed < newLimit ] whileTrue:[ |
|
69 |
| a | |
|
70 |
||
71 |
a := Array new: 100. |
|
72 |
]. |
|
1248
ab9af85de41a
class: RegressionTests::VMCrashTests
Claus Gittinger <cg@exept.de>
parents:
1193
diff
changeset
|
73 |
"/ Now, allocate some really huge object |
1181 | 74 |
String new: 300 * 1024 * 1024"300MB" |
75 |
||
76 |
"Created: / 05-09-2014 / 19:44:09 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
1193
4fd89b765c87
Added forgotten annotation <spawn:true> to newspace overflow test
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1190
diff
changeset
|
77 |
"Modified: / 16-09-2014 / 18:50:30 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1181 | 78 |
! ! |
79 |
||
80 |
!VMCrashTests class methodsFor:'documentation'! |
|
81 |
||
82 |
version |
|
83 |
^ '$Header$' |
|
84 |
! |
|
85 |
||
86 |
version_CVS |
|
87 |
^ '$Header$' |
|
88 |
! ! |
|
89 |