1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Test reconnection after MySQL client timeout. References #428.

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6838 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
Jeremy Kemper 2007-05-25 21:09:46 +00:00
parent def61a200e
commit 4793c5b808
2 changed files with 32 additions and 2 deletions

View file

@ -1,6 +1,6 @@
require 'abstract_unit' require "#{File.dirname(__FILE__)}/abstract_unit"
class ConnectionTest < Test::Unit::TestCase class FirebirdConnectionTest < Test::Unit::TestCase
def test_charset_properly_set def test_charset_properly_set
fb_conn = ActiveRecord::Base.connection.instance_variable_get(:@connection) fb_conn = ActiveRecord::Base.connection.instance_variable_get(:@connection)
assert_equal 'UTF8', fb_conn.database.character_set assert_equal 'UTF8', fb_conn.database.character_set

View file

@ -0,0 +1,30 @@
require "#{File.dirname(__FILE__)}/abstract_unit"
class MysqlConnectionTest < Test::Unit::TestCase
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