| 1 |
require File.dirname(__FILE__) + '/../test_helper' |
|---|
| 2 |
|
|---|
| 3 |
class MysqlConnectionTimeoutControllerTest < Test::Unit::TestCase |
|---|
| 4 |
def setup |
|---|
| 5 |
end |
|---|
| 6 |
|
|---|
| 7 |
def test_mysql_connection_after_timeout |
|---|
| 8 |
assert ActiveRecord::Base.connection.active? |
|---|
| 9 |
ActiveRecord::Base.connection.update("set @@wait_timeout=1") |
|---|
| 10 |
sleep 2 |
|---|
| 11 |
assert ActiveRecord::Base.connection.select_all("select 1=1") |
|---|
| 12 |
end |
|---|
| 13 |
|
|---|
| 14 |
def test_mysql_connection_after_timeout_with_manual_reconnect |
|---|
| 15 |
assert ActiveRecord::Base.connection.active? |
|---|
| 16 |
ActiveRecord::Base.connection.update("set @@wait_timeout=1") |
|---|
| 17 |
sleep 2 |
|---|
| 18 |
ActiveRecord::Base.connection.reconnect! |
|---|
| 19 |
assert ActiveRecord::Base.connection.select_all("select 1=1") |
|---|
| 20 |
end |
|---|
| 21 |
|
|---|
| 22 |
def test_mysql_connection_after_timeout_with_verify |
|---|
| 23 |
assert ActiveRecord::Base.connection.active? |
|---|
| 24 |
ActiveRecord::Base.connection.update("set @@wait_timeout=1") |
|---|
| 25 |
sleep 2 |
|---|
| 26 |
ActiveRecord::Base.connection.verify!(0) |
|---|
| 27 |
assert ActiveRecord::Base.connection.select_all("select 1=1") |
|---|
| 28 |
end |
|---|
| 29 |
|
|---|
| 30 |
end |
|---|