blob: 1313e28bb192d14c85f4d15742edc581615caf00 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
require "cases/helper"
module ActiveRecord
module ConnectionAdapters
class ConnectionManagementTest < ActiveRecord::TestCase
class App
attr_reader :calls
def initialize
@calls = []
end
def call(env)
@calls << env
[200, {}, [['hi mom']]]
end
end
def setup
@env = {}
@app = App.new
@management = ConnectionManagement.new(@app)
# make sure we have an active connection
assert ActiveRecord::Base.connection
assert ActiveRecord::Base.connection_handler.active_connections?
end
def test_app_delegation
manager = ConnectionManagement.new(@app)
manager.call @env
assert_equal [@env], @app.calls
end
test "clears active connections after each call" do
@management.call(@env)
assert !ActiveRecord::Base.connection_handler.active_connections?
end
test "doesn't clear active connections when running in a test case" do
@env['rack.test'] = true
@management.call(@env)
assert ActiveRecord::Base.connection_handler.active_connections?
end
end
end
end
|