2007-05-25 17:09:46 -04:00
|
|
|
require "#{File.dirname(__FILE__)}/abstract_unit"
|
|
|
|
|
|
|
|
class MysqlConnectionTest < Test::Unit::TestCase
|
2007-09-28 10:05:03 -04:00
|
|
|
self.use_transactional_fixtures = false
|
2007-05-25 17:09:46 -04:00
|
|
|
def setup
|
|
|
|
@connection = ActiveRecord::Base.connection
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_no_automatic_reconnection_after_timeout
|
|
|
|
assert @connection.active?
|
|
|
|
@connection.update('set @@wait_timeout=1')
|
|
|
|
sleep 2
|
|
|
|
assert !@connection.active?
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_successful_reconnection_after_timeout_with_manual_reconnect
|
|
|
|
assert @connection.active?
|
|
|
|
@connection.update('set @@wait_timeout=1')
|
|
|
|
sleep 2
|
|
|
|
@connection.reconnect!
|
|
|
|
assert @connection.active?
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_successful_reconnection_after_timeout_with_verify
|
|
|
|
assert @connection.active?
|
|
|
|
@connection.update('set @@wait_timeout=1')
|
|
|
|
sleep 2
|
|
|
|
@connection.verify!(0)
|
|
|
|
assert @connection.active?
|
|
|
|
end
|
|
|
|
end
|