blob: b513e44dc6e6189d9116ed62e70de0cadf197dc7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
require 'test/unit'
$KCODE = 'none'
class TestGc < Test::Unit::TestCase
class S
def initialize(a)
@a = a
end
end
def test_gc
begin
1.upto(10000) {
tmp = [0,1,2,3,4,5,6,7,8,9]
}
tmp = nil
assert true
rescue
assert false
end
l=nil
100000.times {
l = S.new(l)
}
GC.start
assert true # reach here or dumps core
l = []
100000.times {
l.push([l])
}
GC.start
assert true # reach here or dumps core
if $failed > 0
printf "test: %d failed %d\n", $ntest, $failed
else
printf "end of test(test: %d)\n", $ntest
end
end
end
|