diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | test/ruby/test_thread.rb | 16 |
2 files changed, 21 insertions, 0 deletions
@@ -1,3 +1,8 @@ +Sun May 11 19:04:06 2008 Yusuke Endoh <mame@tsg.ne.jp> + + * test/ruby/test_thread.rb: kill and join temporal threads that are + created in each test. + Sun May 11 17:58:45 2008 Tanaka Akira <akr@fsij.org> * test/ruby/test_process.rb (TestProcess#with_stdin): defined. diff --git a/test/ruby/test_thread.rb b/test/ruby/test_thread.rb index bdb9ec24f5..9abe39b104 100644 --- a/test/ruby/test_thread.rb +++ b/test/ruby/test_thread.rb @@ -8,13 +8,29 @@ class TestThread < Test::Unit::TestCase end class Thread < ::Thread + Threads = [] def self.new(*) th = super th.abort_on_exception = true + Threads << th th end end + def setup + Thread::Threads.clear + end + + def teardown + Thread::Threads.each do |t| + t.kill if t.alive? + begin + t.join + rescue Exception + end + end + end + def test_mutex_synchronize m = Mutex.new r = 0 |