Fix connection pool tests and drop global users from spec_helper

pull/7085/head
Javier Torres 9 years ago
parent bc1c780821
commit a2db385200

@ -16,7 +16,7 @@ describe CartoDB::ConnectionPool do
end
after(:each) do
@new_user.destroy unless @new_user.nil?
@users.map(&:destroy) if @users
end
def database_object_count
@ -35,18 +35,17 @@ describe CartoDB::ConnectionPool do
describe '#eviction_policy' do
it 'evicts older connection (LRU)' do
@new_user = create_user
conn_1 = $user_1.in_database
conn_2 = $user_2.in_database
conn_3 = @new_user.in_database
pool_contains?(conn_1).should be_false
pool_contains?(conn_2).should be_true
pool_contains?(conn_3).should be_true
conn_1 = $user_1.in_database
pool_contains?(conn_1).should be_true
pool_contains?(conn_2).should be_false
pool_contains?(conn_3).should be_true
@users = [create_user, create_user, create_user]
conns = @users.map(&:in_database)
pool_contains?(conns[0]).should be_false
pool_contains?(conns[1]).should be_true
pool_contains?(conns[2]).should be_true
conns[0] = @users[0].in_database
pool_contains?(conns[0]).should be_true
pool_contains?(conns[1]).should be_false
pool_contains?(conns[2]).should be_true
end
end
@ -60,22 +59,21 @@ describe CartoDB::ConnectionPool do
initial_user_count = user_object_count
initial_db_count = database_object_count
@new_user = create_user
@users = [create_user, create_user, create_user]
# Create some connections to user database and check that they are not leaked
(0..4).each do |_|
[$user_1, $user_2, @new_user].each do |user|
@users.each do |user|
user.in_database.test_connection.should be_true
end
end
database_object_count.should < (initial_db_count + MAX_ALLOWABLE_CONNECTIONS)
# Destroy new user and ensure it does not leaks (as soon as his db connection is evicted)
@new_user.destroy
@new_user = nil
@users.delete_at(0).destroy
(0..4).each do |_|
[$user_1, $user_2].each do |user|
@users.each do |user|
user.in_database.test_connection.should be_true
end
end

@ -45,30 +45,13 @@ RSpec.configure do |config|
close_pool_connections
drop_leaked_test_user_databases
end
$user_1 = create_user(quota_in_bytes: 524288000, table_quota: 500, private_tables_enabled: true, name: 'User 1 Full Name')
$user_2 = create_user(quota_in_bytes: 524288000, table_quota: 500, private_tables_enabled: true)
end
config.after(:all) do
unless ENV['PARALLEL']
begin
stub_named_maps_calls
delete_user_data($user_1)
delete_user_data($user_2)
$user_1.destroy
$user_2.destroy
ensure
close_pool_connections
drop_leaked_test_user_databases
delete_database_test_users
end
else
stub_named_maps_calls
delete_user_data($user_1)
delete_user_data($user_2)
$user_1.destroy
$user_2.destroy
close_pool_connections
drop_leaked_test_user_databases
delete_database_test_users
end
end

Loading…
Cancel
Save