summaryrefslogtreecommitdiff
path: root/spec/migrations
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-02-10 12:08:59 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-02-10 12:08:59 +0000
commit7351a484d79236b7e9d47c86f2fcc970b7ae10b0 (patch)
tree651b5fca7ea0460e3ce7c687cfa9e3a3b37eefc8 /spec/migrations
parentb4ded0ba7b4d2cdbed5b1f331cf2083a25ee4d7c (diff)
downloadgitlab-ce-7351a484d79236b7e9d47c86f2fcc970b7ae10b0.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/migrations')
-rw-r--r--spec/migrations/20200122123016_backfill_project_settings_spec.rb32
1 files changed, 32 insertions, 0 deletions
diff --git a/spec/migrations/20200122123016_backfill_project_settings_spec.rb b/spec/migrations/20200122123016_backfill_project_settings_spec.rb
new file mode 100644
index 00000000000..fec18d6d52b
--- /dev/null
+++ b/spec/migrations/20200122123016_backfill_project_settings_spec.rb
@@ -0,0 +1,32 @@
+# frozen_string_literal: true
+
+require 'spec_helper'
+require Rails.root.join('db', 'post_migrate', '20200122123016_backfill_project_settings.rb')
+
+describe BackfillProjectSettings, :migration, :sidekiq, schema: 20200114113341 do
+ let(:projects) { table(:projects) }
+ let(:namespace) { table(:namespaces).create(name: 'user', path: 'user') }
+ let(:project) { projects.create(namespace_id: namespace.id) }
+
+ describe '#up' do
+ before do
+ stub_const("#{described_class}::BATCH_SIZE", 2)
+
+ projects.create(id: 1, namespace_id: namespace.id)
+ projects.create(id: 2, namespace_id: namespace.id)
+ projects.create(id: 3, namespace_id: namespace.id)
+ end
+
+ it 'schedules BackfillProjectSettings background jobs' do
+ Sidekiq::Testing.fake! do
+ Timecop.freeze do
+ migrate!
+
+ expect(described_class::MIGRATION).to be_scheduled_delayed_migration(2.minutes, 1, 2)
+ expect(described_class::MIGRATION).to be_scheduled_delayed_migration(4.minutes, 3, 3)
+ expect(BackgroundMigrationWorker.jobs.size).to eq(2)
+ end
+ end
+ end
+ end
+end