Commit b6cc96d0 authored by Gary Holtz's avatar Gary Holtz

Adding some refactoring suggestions

parent 3fc2145c
...@@ -253,12 +253,12 @@ module Gitlab ...@@ -253,12 +253,12 @@ module Gitlab
end end
def reviewers_to_add(users) def reviewers_to_add(users)
if users.present? return if users.blank?
if quick_action_target.allows_multiple_reviewers?
users if quick_action_target.allows_multiple_reviewers?
else users
[users.first] else
end [users.first]
end end
end end
......
...@@ -669,23 +669,19 @@ RSpec.describe QuickActions::InterpretService do ...@@ -669,23 +669,19 @@ RSpec.describe QuickActions::InterpretService do
shared_examples 'assign_reviewer command' do shared_examples 'assign_reviewer command' do
it 'assigns a reviewer to a single user' do it 'assigns a reviewer to a single user' do
_, explanations = service.explain(content, issuable)
_, updates, message = service.execute(content, issuable) _, updates, message = service.execute(content, issuable)
expect(updates).to eq(reviewer_ids: [developer.id]) expect(updates).to eq(reviewer_ids: [developer.id])
expect(message).to eq("Assigned #{developer.to_reference} as reviewer.") expect(message).to eq("Assigned #{developer.to_reference} as reviewer.")
expect(explanations).to eq(["Assigns #{developer.to_reference} as reviewer."])
end end
end end
shared_examples 'unassign_reviewer command' do shared_examples 'unassign_reviewer command' do
it 'removes a single reviewer' do it 'removes a single reviewer' do
_, explanations = service.explain(content, issuable)
_, updates, message = service.execute(content, issuable) _, updates, message = service.execute(content, issuable)
expect(updates).to eq(reviewer_ids: []) expect(updates).to eq(reviewer_ids: [])
expect(message).to eq("Removed reviewer #{developer.to_reference}.") expect(message).to eq("Removed reviewer #{developer.to_reference}.")
expect(explanations).to eq(["Removes reviewer @#{developer.username}."])
end end
end end
...@@ -2009,6 +2005,28 @@ RSpec.describe QuickActions::InterpretService do ...@@ -2009,6 +2005,28 @@ RSpec.describe QuickActions::InterpretService do
end end
end end
describe 'unassign_reviewer command' do
let(:content) { '/unassign_reviewer' }
let(:merge_request) { create(:merge_request, source_project: project, reviewers: [developer]) }
it 'includes current assignee reference' do
_, explanations = service.explain(content, merge_request)
expect(explanations).to eq(["Removes reviewer @#{developer.username}."])
end
end
describe 'assign_reviewer command' do
let(:content) { "/assign_reviewer #{developer.to_reference}" }
let(:merge_request) { create(:merge_request, source_project: project, assignees: [developer]) }
it 'includes only the user reference' do
_, explanations = service.explain(content, merge_request)
expect(explanations).to eq(["Assigns #{developer.to_reference} as reviewer."])
end
end
describe 'milestone command' do describe 'milestone command' do
let(:content) { '/milestone %wrong-milestone' } let(:content) { '/milestone %wrong-milestone' }
let!(:milestone) { create(:milestone, project: project, title: '9.10') } let!(:milestone) { create(:milestone, project: project, title: '9.10') }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment