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:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-03-26 18:08:16 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-03-26 18:08:16 +0300
commite80e0dd64fbb04f60394cb1bb08e17dbcb22b8ce (patch)
tree9e538341b9b77e96737964813e10235dbecf47ff /spec/lib/gitlab/database
parentef31adeb0fb9a02b2c6a4529ec4e38d7082a4b2b (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/lib/gitlab/database')
-rw-r--r--spec/lib/gitlab/database/migration_helpers_spec.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/spec/lib/gitlab/database/migration_helpers_spec.rb b/spec/lib/gitlab/database/migration_helpers_spec.rb
index 9ac2660908c..8b765ce122d 100644
--- a/spec/lib/gitlab/database/migration_helpers_spec.rb
+++ b/spec/lib/gitlab/database/migration_helpers_spec.rb
@@ -657,6 +657,30 @@ describe Gitlab::Database::MigrationHelpers do
end
end
+ context 'when `update_column_in_batches_args` is given' do
+ let(:column) { UserDetail.columns.find { |c| c.name == "user_id" } }
+
+ it 'uses `user_id` for `update_column_in_batches`' do
+ allow(model).to receive(:transaction_open?).and_return(false)
+ allow(model).to receive(:transaction).and_yield
+ allow(model).to receive(:column_for).with(:user_details, :foo).and_return(column)
+ allow(model).to receive(:update_column_in_batches).with(:user_details, :foo, 10, batch_column_name: :user_id)
+ allow(model).to receive(:change_column_null).with(:user_details, :foo, false)
+ allow(model).to receive(:change_column_default).with(:user_details, :foo, 10)
+
+ expect(model).to receive(:add_column)
+ .with(:user_details, :foo, :integer, default: nil)
+
+ model.add_column_with_default(
+ :user_details,
+ :foo,
+ :integer,
+ default: 10,
+ update_column_in_batches_args: { batch_column_name: :user_id }
+ )
+ end
+ end
+
context 'when a column limit is set' do
it 'adds the column with a limit' do
allow(model).to receive(:transaction_open?).and_return(false)