diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2011-03-29 15:47:16 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2011-03-29 15:47:16 -0700 |
commit | c7b7c6ad1c773102753f1a11b857d0e37ceb6a21 (patch) | |
tree | d9caf7c3e9a7b1c114f6f50127dfd3ad920843cc /activerecord/lib | |
parent | 3b2a032677a2261499aa5d2de019f31f1173a858 (diff) | |
download | rails-c7b7c6ad1c773102753f1a11b857d0e37ceb6a21.tar.gz rails-c7b7c6ad1c773102753f1a11b857d0e37ceb6a21.tar.bz2 rails-c7b7c6ad1c773102753f1a11b857d0e37ceb6a21.zip |
make sure that active connections are not cleared during test when an exception happens
Diffstat (limited to 'activerecord/lib')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb b/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb index 45900d27dc..b4db1eed18 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb @@ -443,11 +443,13 @@ module ActiveRecord end def call(env) + testing = env.key?('rack.test') + status, headers, body = @app.call(env) - [status, headers, Proxy.new(body, env.key?('rack.test'))] + [status, headers, Proxy.new(body, testing)] rescue - ActiveRecord::Base.clear_active_connections! + ActiveRecord::Base.clear_active_connections! unless testing raise end end |