diff options
author | Mehdi Lahmam <mehdi@lahmam.com> | 2017-08-07 01:12:13 +0300 |
---|---|---|
committer | Mehdi Lahmam <mehdi@lahmam.com> | 2017-08-07 15:40:33 +0300 |
commit | 5ad9d94d8e3f9222d69fc0e408ae2e37363bed53 (patch) | |
tree | aad2283e769c3ba29bb8f4bceec685f269719a29 /spec | |
parent | 4b3011e1c20077470ce946d703d98259f88ef268 (diff) |
Add `/assign me` alias support for assigning issuables to oneself
Currently, when a user wants to assign an issue/MR to himself, he needs
to type his full username or select it from the suggested ones in the
dropdown list.
This commits suggest a faster solution which is typing `/assign me`
Closes #35304.
Diffstat (limited to 'spec')
-rw-r--r-- | spec/services/quick_actions/interpret_service_spec.rb | 20 | ||||
-rw-r--r-- | spec/support/features/issuable_slash_commands_shared_examples.rb | 11 |
2 files changed, 31 insertions, 0 deletions
diff --git a/spec/services/quick_actions/interpret_service_spec.rb b/spec/services/quick_actions/interpret_service_spec.rb index b78ecfb61c4..30fa0ee6873 100644 --- a/spec/services/quick_actions/interpret_service_spec.rb +++ b/spec/services/quick_actions/interpret_service_spec.rb @@ -424,6 +424,26 @@ describe QuickActions::InterpretService do end end + context 'assign command with me alias' do + let(:content) { "/assign me" } + + context 'Issue' do + it 'fetches assignee and populates assignee_ids if content contains /assign' do + _, updates = service.execute(content, issue) + + expect(updates).to eq(assignee_ids: [developer.id]) + end + end + + context 'Merge Request' do + it 'fetches assignee and populates assignee_ids if content contains /assign' do + _, updates = service.execute(content, merge_request) + + expect(updates).to eq(assignee_ids: [developer.id]) + end + end + end + it_behaves_like 'empty command' do let(:content) { '/assign @abcd1234' } let(:issuable) { issue } diff --git a/spec/support/features/issuable_slash_commands_shared_examples.rb b/spec/support/features/issuable_slash_commands_shared_examples.rb index 32835e391a8..68f0ce8afb3 100644 --- a/spec/support/features/issuable_slash_commands_shared_examples.rb +++ b/spec/support/features/issuable_slash_commands_shared_examples.rb @@ -279,6 +279,17 @@ shared_examples 'issuable record that supports quick actions in its description expect(issuable.subscribed?(master, project)).to be_falsy end end + + context "with a note assigning the #{issuable_type} to the current user" do + it "assigns the #{issuable_type} to the current user" do + write_note("/assign me") + + expect(page).not_to have_content '/assign me' + expect(page).to have_content 'Commands applied' + + expect(issuable.reload.assignees).to eq [master] + end + end end describe "preview of note on #{issuable_type}" do |