diff options
author | Valery Sizov <valery@gitlab.com> | 2017-05-05 18:55:16 +0300 |
---|---|---|
committer | Valery Sizov <valery@gitlab.com> | 2017-05-05 18:55:16 +0300 |
commit | 0cfe35f7279e7b6618c10be91908c29cd7ab110a (patch) | |
tree | 69b9ef3167b78ce42e6178358e05d90e78856840 /spec/services/notes | |
parent | 9c0f2485b5d7fed5b538313e5bf867110273c004 (diff) |
Multiple issue assignee: CE restriction for multiple assignees
Diffstat (limited to 'spec/services/notes')
-rw-r--r-- | spec/services/notes/slash_commands_service_spec.rb | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/spec/services/notes/slash_commands_service_spec.rb b/spec/services/notes/slash_commands_service_spec.rb index 0edcc50ed7b..b99f01162ee 100644 --- a/spec/services/notes/slash_commands_service_spec.rb +++ b/spec/services/notes/slash_commands_service_spec.rb @@ -220,4 +220,31 @@ describe Notes::SlashCommandsService, services: true do let(:note) { build(:note_on_commit, project: project) } end end + + context 'CE restriction for issue assignees' do + describe '/assign' do + let(:project) { create(:empty_project) } + let(:master) { create(:user).tap { |u| project.team << [u, :master] } } + let(:assignee) { create(:user) } + let(:master) { create(:user) } + let(:service) { described_class.new(project, master) } + let(:note) { create(:note_on_issue, note: note_text, project: project) } + + let(:note_text) do + %(/assign @#{assignee.username} @#{master.username}\n") + end + + before do + project.team << [master, :master] + project.team << [assignee, :master] + end + + it 'adds only one assignee from the list' do + content, command_params = service.extract_commands(note) + service.execute(command_params, note) + + expect(note.noteable.assignees.count).to eq(1) + end + end + end end |