From af49aecff16d6969551eec0072e0713702aac18f Mon Sep 17 00:00:00 2001 From: nahi Date: Fri, 5 Sep 2003 00:36:47 +0000 Subject: [PATCH] * test/ruby/test_gc.rb: added. splitter.rb which I made to split sample/test.rb into test/ruby/test_* kindly removed GC test (the last section in the original test) to reduce things to be worried. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ test/ruby/test_gc.rb | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 test/ruby/test_gc.rb diff --git a/ChangeLog b/ChangeLog index 4663fa4e18..c6c1b796db 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Fri Sep 5 09:28:59 2003 NAKAMURA, Hiroshi + + * test/ruby/test_gc.rb: added. splitter.rb which I made to split + sample/test.rb into test/ruby/test_* kindly removed GC test (the + last section in the original test) to reduce things to be worried. + Fri Sep 5 03:00:04 2003 Nobuyoshi Nakada * test/ruby/test_iterator.rb (test_block_in_arg): add no block diff --git a/test/ruby/test_gc.rb b/test/ruby/test_gc.rb new file mode 100644 index 0000000000..b513e44dc6 --- /dev/null +++ b/test/ruby/test_gc.rb @@ -0,0 +1,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