2018-03-17 18:26:18 +05:30
|
|
|
require 'spec_helper'
|
|
|
|
|
|
|
|
describe StorageMigratorWorker do
|
|
|
|
subject(:worker) { described_class.new }
|
2018-11-08 19:23:39 +05:30
|
|
|
let(:projects) { create_list(:project, 2, :legacy_storage, :empty_repo) }
|
|
|
|
let(:ids) { projects.map(&:id) }
|
2018-03-17 18:26:18 +05:30
|
|
|
|
|
|
|
describe '#perform' do
|
2018-11-08 19:23:39 +05:30
|
|
|
it 'delegates to MigratorService' do
|
|
|
|
expect_any_instance_of(Gitlab::HashedStorage::Migrator).to receive(:bulk_migrate).with(5, 10)
|
2018-03-17 18:26:18 +05:30
|
|
|
|
2018-11-08 19:23:39 +05:30
|
|
|
worker.perform(5, 10)
|
2018-03-17 18:26:18 +05:30
|
|
|
end
|
|
|
|
|
2018-11-08 19:23:39 +05:30
|
|
|
it 'migrates projects in the specified range' do
|
2018-11-18 11:00:15 +05:30
|
|
|
perform_enqueued_jobs do
|
2018-11-08 19:23:39 +05:30
|
|
|
worker.perform(ids.min, ids.max)
|
|
|
|
end
|
2018-03-17 18:26:18 +05:30
|
|
|
|
|
|
|
projects.each do |project|
|
2018-11-08 19:23:39 +05:30
|
|
|
expect(project.reload.hashed_storage?(:attachments)).to be_truthy
|
2018-03-17 18:26:18 +05:30
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|