spec/lib/release_tools/internal_release/issue_helper_spec.rb (37 lines of code) (raw):
# frozen_string_literal: true
require 'spec_helper'
describe ReleaseTools::InternalRelease::IssueHelper do
before do
foo_class = Class.new do
include ReleaseTools::InternalRelease::IssueHelper
end
stub_const('FooClass', foo_class)
allow(ReleaseTools::GitlabClient).to receive(:client).and_return(internal_client)
allow(internal_client).to receive(:issues).and_return([create(:issue)])
end
let(:foo_class) { FooClass.new }
let(:internal_client) { instance_double(Gitlab::Client) }
describe '#internal_release_task_issue' do
it 'fetches the internal release task issue' do
expect(internal_client)
.to receive(:issues)
.with(
'gitlab-org/release/tasks',
labels: 'internal releases',
state: 'opened'
)
foo_class.internal_release_task_issue
end
end
describe '#internal_release_dedicated_issue' do
it 'fetches the internal release dedicated issue' do
expect(internal_client)
.to receive(:issues)
.with(
'gitlab-com/gl-infra/gitlab-dedicated/team',
labels: 'internal releases',
state: 'opened'
)
foo_class.internal_release_dedicated_issue
end
end
end