43 lines
1.1 KiB
Ruby
43 lines
1.1 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
require 'spec_helper'
|
|
|
|
describe UpdateMergeRequestsWorker do
|
|
include RepoHelpers
|
|
|
|
let(:project) { create(:project, :repository) }
|
|
let(:user) { create(:user) }
|
|
|
|
subject { described_class.new }
|
|
|
|
describe '#perform' do
|
|
let(:oldrev) { "123456" }
|
|
let(:newrev) { "789012" }
|
|
let(:ref) { "refs/heads/test" }
|
|
|
|
def perform
|
|
subject.perform(project.id, user.id, oldrev, newrev, ref)
|
|
end
|
|
|
|
it 'executes MergeRequests::RefreshService with expected values' do
|
|
expect_next_instance_of(MergeRequests::RefreshService, project, user) do |refresh_service|
|
|
expect(refresh_service).to receive(:execute).with(oldrev, newrev, ref)
|
|
end
|
|
|
|
perform
|
|
end
|
|
|
|
context 'when slow' do
|
|
before do
|
|
stub_const("UpdateMergeRequestsWorker::LOG_TIME_THRESHOLD", -1)
|
|
end
|
|
|
|
it 'logs debug info' do
|
|
expect(Rails.logger).to receive(:info).with(a_string_matching(/\AUpdateMergeRequestsWorker#perform.*project_id=#{project.id},user_id=#{user.id},oldrev=#{oldrev},newrev=#{newrev},ref=#{ref}/))
|
|
|
|
perform
|
|
end
|
|
end
|
|
end
|
|
end
|