41 lines
1.1 KiB
Ruby
41 lines
1.1 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
RSpec.shared_examples 'aborted merge requests for MWPS' do
|
|
let(:aborted_message) do
|
|
/aborted the automatic merge because target branch was updated/
|
|
end
|
|
|
|
it 'aborts auto_merge' do
|
|
expect(merge_request.auto_merge_enabled?).to be_falsey
|
|
expect(merge_request.notes.last.note).to match(aborted_message)
|
|
end
|
|
|
|
it 'removes merge_user' do
|
|
expect(merge_request.merge_user).to be_nil
|
|
end
|
|
|
|
it 'does not add todos for merge user' do
|
|
expect(user.todos.for_target(merge_request)).to be_empty
|
|
end
|
|
|
|
it 'adds todos for merge author' do
|
|
expect(author.todos.for_target(merge_request)).to be_present.and be_all(&:pending?)
|
|
end
|
|
end
|
|
|
|
RSpec.shared_examples 'maintained merge requests for MWPS' do
|
|
it 'does not cancel auto merge' do
|
|
expect(merge_request.auto_merge_enabled?).to be_truthy
|
|
expect(merge_request.notes).to be_empty
|
|
end
|
|
|
|
it 'does not change merge_user' do
|
|
expect(merge_request.merge_user).to eq(user)
|
|
end
|
|
|
|
it 'does not add todos' do
|
|
expect(author.todos.for_target(merge_request)).to be_empty
|
|
expect(user.todos.for_target(merge_request)).to be_empty
|
|
end
|
|
end
|