Commit 6755d9908f95c12fcce422ffcbfc10bda9473104
Exists in
master
and in
4 other branches
Merge pull request #3196 from Undev/feature/broken-projects-search-23049
Broken projects search on dashboard
Showing
6 changed files
with
34 additions
and
5 deletions
Show diff stats
app/controllers/dashboard_controller.rb
@@ -34,6 +34,7 @@ class DashboardController < ApplicationController | @@ -34,6 +34,7 @@ class DashboardController < ApplicationController | ||
34 | @projects | 34 | @projects |
35 | end | 35 | end |
36 | 36 | ||
37 | + @projects = @projects.search(params[:search]) if params[:search].present? | ||
37 | @projects = @projects.page(params[:page]).per(30) | 38 | @projects = @projects.page(params[:page]).per(30) |
38 | end | 39 | end |
39 | 40 |
app/views/dashboard/_filter.html.haml
1 | = form_tag dashboard_filter_path(entity), method: 'get' do | 1 | = form_tag dashboard_filter_path(entity), method: 'get' do |
2 | %fieldset.dashboard-search-filter | 2 | %fieldset.dashboard-search-filter |
3 | - = search_field_tag "search", params[:search], { placeholder: 'Search', class: 'search-text-input' } | 3 | + = search_field_tag "search", params[:search], { id: 'filter_search', placeholder: 'Search', class: 'search-text-input' } |
4 | = button_tag type: 'submit', class: 'btn' do | 4 | = button_tag type: 'submit', class: 'btn' do |
5 | %i.icon-search | 5 | %i.icon-search |
6 | 6 |
app/views/dashboard/projects.html.haml
@@ -24,7 +24,7 @@ | @@ -24,7 +24,7 @@ | ||
24 | = form_tag projects_dashboard_path, method: 'get' do | 24 | = form_tag projects_dashboard_path, method: 'get' do |
25 | %fieldset.dashboard-search-filter | 25 | %fieldset.dashboard-search-filter |
26 | = hidden_field_tag "scope", params[:scope] | 26 | = hidden_field_tag "scope", params[:scope] |
27 | - = search_field_tag "search", params[:search], { placeholder: 'Search', class: 'left input-xxlarge' } | 27 | + = search_field_tag "search", params[:search], { id: 'dashboard_projects_search', placeholder: 'Search', class: 'left input-xxlarge'} |
28 | = button_tag type: 'submit', class: 'btn' do | 28 | = button_tag type: 'submit', class: 'btn' do |
29 | %i.icon-search | 29 | %i.icon-search |
30 | 30 |
features/dashboard/projects.feature
1 | -Feature: Dashboard | 1 | +Feature: Dashboard projects |
2 | Background: | 2 | Background: |
3 | Given I sign in as a user | 3 | Given I sign in as a user |
4 | And I own project "Shop" | 4 | And I own project "Shop" |
5 | And I visit dashboard projects page | 5 | And I visit dashboard projects page |
6 | 6 | ||
7 | - Scenario: I should see issues list | 7 | + Scenario: I should see projects list |
8 | Then I should see projects list | 8 | Then I should see projects list |
9 | + | ||
10 | + Scenario: I should see project I am looking for | ||
11 | + Given I search for "Sho" | ||
12 | + Then I should see "Shop" project link |
@@ -0,0 +1,23 @@ | @@ -0,0 +1,23 @@ | ||
1 | +class Dashboard < Spinach::FeatureSteps | ||
2 | + include SharedAuthentication | ||
3 | + include SharedPaths | ||
4 | + include SharedProject | ||
5 | + | ||
6 | + Then 'I should see projects list' do | ||
7 | + @user.authorized_projects.all.each do |project| | ||
8 | + page.should have_link project.name_with_namespace | ||
9 | + end | ||
10 | + end | ||
11 | + | ||
12 | + Given 'I search for "Sho"' do | ||
13 | + fill_in "dashboard_projects_search", with: "Sho" | ||
14 | + | ||
15 | + within ".dashboard-search-filter" do | ||
16 | + find('button').click | ||
17 | + end | ||
18 | + end | ||
19 | + | ||
20 | + Then 'I should see "Shop" project link' do | ||
21 | + page.should have_link "Shop" | ||
22 | + end | ||
23 | +end |
features/steps/shared/project.rb
@@ -9,7 +9,8 @@ module SharedProject | @@ -9,7 +9,8 @@ module SharedProject | ||
9 | 9 | ||
10 | # Create a specific project called "Shop" | 10 | # Create a specific project called "Shop" |
11 | And 'I own project "Shop"' do | 11 | And 'I own project "Shop"' do |
12 | - @project = create(:project, name: "Shop") | 12 | + @project = Project.find_by_name "Shop" |
13 | + @project ||= create(:project, name: "Shop") | ||
13 | @project.team << [@user, :master] | 14 | @project.team << [@user, :master] |
14 | end | 15 | end |
15 | 16 |