Commit 1a09c207 authored by Clement Ho's avatar Clement Ho

Merge branch 'group-mr-search-bar' into 'master'

Add filtered search to group merge requests dashboard

Closes #36703

See merge request !13688
parents df677647 5e0b1442
...@@ -184,13 +184,13 @@ import initChangesDropdown from './init_changes_dropdown'; ...@@ -184,13 +184,13 @@ import initChangesDropdown from './init_changes_dropdown';
break; break;
case 'dashboard:issues': case 'dashboard:issues':
case 'dashboard:merge_requests': case 'dashboard:merge_requests':
case 'groups:merge_requests':
new ProjectSelect(); new ProjectSelect();
initLegacyFilters(); initLegacyFilters();
break; break;
case 'groups:issues': case 'groups:issues':
case 'groups:merge_requests':
if (filteredSearchEnabled) { if (filteredSearchEnabled) {
const filteredSearchManager = new gl.FilteredSearchManager('issues'); const filteredSearchManager = new gl.FilteredSearchManager(page === 'groups:issues' ? 'issues' : 'merge_requests');
filteredSearchManager.setup(); filteredSearchManager.setup();
} }
new ProjectSelect(); new ProjectSelect();
......
- page_title "Merge Requests" - page_title "Merge Requests"
- content_for :page_specific_javascripts do
= webpack_bundle_tag 'common_vue'
= webpack_bundle_tag 'filtered_search'
- if show_new_nav? && current_user - if show_new_nav? && current_user
- content_for :breadcrumbs_extra do - content_for :breadcrumbs_extra do
= render 'shared/new_project_item_select', path: 'merge_requests/new', label: "New merge request", type: :merge_requests = render 'shared/new_project_item_select', path: 'merge_requests/new', label: "New merge request", type: :merge_requests
...@@ -13,7 +17,7 @@ ...@@ -13,7 +17,7 @@
.nav-controls{ class: ("visible-xs" if show_new_nav?) } .nav-controls{ class: ("visible-xs" if show_new_nav?) }
= render 'shared/new_project_item_select', path: 'merge_requests/new', label: "New merge request", type: :merge_requests = render 'shared/new_project_item_select', path: 'merge_requests/new', label: "New merge request", type: :merge_requests
= render 'shared/issuable/filter', type: :merge_requests = render 'shared/issuable/search_bar', type: :merge_requests
.row-content-block.second-block .row-content-block.second-block
Only merge requests from Only merge requests from
......
---
title: Add filtered search to group merge requests dashboard
merge_request: 13688
author: Hiroyuki Sato
type: changed
require 'spec_helper' require 'spec_helper'
feature 'Group merge requests page' do feature 'Group merge requests page' do
include FilteredSearchHelpers
let(:path) { merge_requests_group_path(group) } let(:path) { merge_requests_group_path(group) }
let(:issuable) { create(:merge_request, source_project: project, target_project: project, title: 'this is my created issuable') } let(:issuable) { create(:merge_request, source_project: project, target_project: project, title: 'this is my created issuable') }
...@@ -33,4 +35,17 @@ feature 'Group merge requests page' do ...@@ -33,4 +35,17 @@ feature 'Group merge requests page' do
expect(page.find('#state-all span.badge').text).to eq("1") expect(page.find('#state-all span.badge').text).to eq("1")
end end
end end
context 'group filtered search', :js do
let(:access_level) { ProjectFeature::ENABLED }
let(:user) { user_in_group }
let(:user2) { user_outside_group }
it 'filters by assignee only group users' do
filtered_search.set('assignee:')
expect(find('#js-dropdown-assignee .filter-dropdown')).to have_content(user.name)
expect(find('#js-dropdown-assignee .filter-dropdown')).not_to have_content(user2.name)
end
end
end end
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