Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/initializers/database_config_spec.rb')
-rw-r--r--spec/initializers/database_config_spec.rb30
1 files changed, 24 insertions, 6 deletions
diff --git a/spec/initializers/database_config_spec.rb b/spec/initializers/database_config_spec.rb
index 230f1296760..bbb5e7b1923 100644
--- a/spec/initializers/database_config_spec.rb
+++ b/spec/initializers/database_config_spec.rb
@@ -7,15 +7,33 @@ RSpec.describe 'Database config initializer', :reestablished_active_record_base
load Rails.root.join('config/initializers/database_config.rb')
end
- it 'retains the correct database name for the connection' do
- previous_db_name = ApplicationRecord.connection.pool.db_config.name
+ shared_examples 'does not change connection attributes' do
+ it 'retains the correct database name for connection' do
+ previous_db_name = database_base_model.connection.pool.db_config.name
- subject
+ subject
- expect(ApplicationRecord.connection.pool.db_config.name).to eq(previous_db_name)
+ expect(database_base_model.connection.pool.db_config.name).to eq(previous_db_name)
+ end
+
+ it 'does not overwrite custom pool settings' do
+ expect { subject }.not_to change { database_base_model.connection_db_config.pool }
+ end
+ end
+
+ context 'when main database connection' do
+ let(:database_base_model) { Gitlab::Database.database_base_models[:main] }
+
+ it_behaves_like 'does not change connection attributes'
end
- it 'does not overwrite custom pool settings' do
- expect { subject }.not_to change { ActiveRecord::Base.connection_db_config.pool }
+ context 'when ci database connection' do
+ before do
+ skip_if_multiple_databases_not_setup
+ end
+
+ let(:database_base_model) { Gitlab::Database.database_base_models[:ci] }
+
+ it_behaves_like 'does not change connection attributes'
end
end