2019-03-30 07:15:48 +00:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2018-09-27 08:50:50 +00:00
|
|
|
require 'spec_helper'
|
|
|
|
|
2020-06-24 15:08:50 +00:00
|
|
|
RSpec.describe Ci::BuildScheduleWorker do
|
2018-09-27 08:50:50 +00:00
|
|
|
subject { described_class.new.perform(build.id) }
|
|
|
|
|
|
|
|
context 'when build is found' do
|
|
|
|
context 'when build is scheduled' do
|
|
|
|
let(:build) { create(:ci_build, :scheduled) }
|
|
|
|
|
|
|
|
it 'executes RunScheduledBuildService' do
|
|
|
|
expect_any_instance_of(Ci::RunScheduledBuildService)
|
|
|
|
.to receive(:execute).once
|
2018-09-28 05:41:39 +00:00
|
|
|
|
2018-09-27 08:50:50 +00:00
|
|
|
subject
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
context 'when build is not scheduled' do
|
|
|
|
let(:build) { create(:ci_build, :created) }
|
|
|
|
|
|
|
|
it 'executes RunScheduledBuildService' do
|
|
|
|
expect_any_instance_of(Ci::RunScheduledBuildService)
|
|
|
|
.not_to receive(:execute)
|
|
|
|
|
|
|
|
subject
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
context 'when build is not found' do
|
|
|
|
let(:build) { build_stubbed(:ci_build, :scheduled) }
|
|
|
|
|
|
|
|
it 'does nothing' do
|
|
|
|
expect_any_instance_of(Ci::RunScheduledBuildService)
|
|
|
|
.not_to receive(:execute)
|
|
|
|
|
|
|
|
subject
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|