Commit a1b840eb authored by Fatih Acet's avatar Fatih Acet

Merge branch 'assignee-dropdown-autocomplete' into 'master'

Include author in assignee dropdown search

## What does this MR do?

Previously when you searched for the author in the assignee dropdown (if they aren't in the project) it did not actually include the author. This changes that so that when you search for the author it will correctly include the user.

## Screenshots (if relevant)

![Screen_Shot_2016-11-17_at_11.14.53](/uploads/5a13475d8ded459fd3b1ba6570897665/Screen_Shot_2016-11-17_at_11.14.53.png)

## What are the relevant issue numbers?

Closes #22905

See merge request !7526
parents 8762db3b 80073da9
......@@ -55,7 +55,13 @@ class AutocompleteController < ApplicationController
def find_users
@users =
if @project
@project.team.users
user_ids = @project.team.users.map(&:id)
if params[:author_id].present?
user_ids << params[:author_id]
end
User.where(id: user_ids)
elsif params[:group_id].present?
group = Group.find(params[:group_id])
return render_404 unless can?(current_user, :read_group, group)
......
---
title: Assignee dropdown now searches author of issue or merge request
merge_request:
author:
require 'rails_helper'
feature 'Issue Sidebar', feature: true do
let(:project) { create(:project) }
include WaitForAjax
let(:project) { create(:project, :public) }
let(:issue) { create(:issue, project: project) }
let!(:user) { create(:user)}
......@@ -10,6 +12,37 @@ feature 'Issue Sidebar', feature: true do
login_as(user)
end
context 'assignee', js: true do
let(:user2) { create(:user) }
let(:issue2) { create(:issue, project: project, author: user2) }
before do
project.team << [user, :developer]
visit_issue(project, issue2)
find('.block.assignee .edit-link').click
wait_for_ajax
end
it 'shows author in assignee dropdown' do
page.within '.dropdown-menu-user' do
expect(page).to have_content(user2.name)
end
end
it 'shows author when filtering assignee dropdown' do
page.within '.dropdown-menu-user' do
find('.dropdown-input-field').native.send_keys user2.name
sleep 1 # Required to wait for end of input delay
wait_for_ajax
expect(page).to have_content(user2.name)
end
end
end
context 'as a allowed user' do
before do
project.team << [user, :developer]
......
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