class ActiveRecord::ConnectionAdapters::ReaperTest
Attributes
pool[R]
Public Instance Methods
setup()
click to toggle source
Calls superclass method
# File activerecord/test/cases/reaper_test.rb, line 10 def setup super @pool = ConnectionPool.new ActiveRecord::Base.connection_pool.spec end
test_connection_pool_starts_reaper()
click to toggle source
# File activerecord/test/cases/reaper_test.rb, line 63 def test_connection_pool_starts_reaper spec = ActiveRecord::Base.connection_pool.spec.dup spec.config[:reaping_frequency] = "0.0001" pool = ConnectionPool.new spec conn = nil child = Thread.new do conn = pool.checkout Thread.stop end Thread.pass while conn.nil? assert conn.in_use? child.terminate while conn.in_use? Thread.pass end assert !conn.in_use? end
test_nil_time()
click to toggle source
A
reaper with nil time should never reap connections
# File activerecord/test/cases/reaper_test.rb, line 32 def test_nil_time fp = FakePool.new assert !fp.reaped reaper = ConnectionPool::Reaper.new(fp, nil) reaper.run assert !fp.reaped end
test_pool_has_reaper()
click to toggle source
# File activerecord/test/cases/reaper_test.rb, line 52 def test_pool_has_reaper assert pool.reaper end
test_reaping_frequency_configuration()
click to toggle source
# File activerecord/test/cases/reaper_test.rb, line 56 def test_reaping_frequency_configuration spec = ActiveRecord::Base.connection_pool.spec.dup spec.config[:reaping_frequency] = 100 pool = ConnectionPool.new spec assert_equal 100, pool.reaper.frequency end
test_some_time()
click to toggle source
# File activerecord/test/cases/reaper_test.rb, line 40 def test_some_time fp = FakePool.new assert !fp.reaped reaper = ConnectionPool::Reaper.new(fp, 0.0001) reaper.run until fp.reaped Thread.pass end assert fp.reaped end