diff options
Diffstat (limited to 'spec/features/issues/filtered_search')
11 files changed, 53 insertions, 46 deletions
diff --git a/spec/features/issues/filtered_search/dropdown_assignee_spec.rb b/spec/features/issues/filtered_search/dropdown_assignee_spec.rb index 381633b0fc9..e873ebb21c4 100644 --- a/spec/features/issues/filtered_search/dropdown_assignee_spec.rb +++ b/spec/features/issues/filtered_search/dropdown_assignee_spec.rb @@ -5,15 +5,16 @@ require 'spec_helper' RSpec.describe 'Dropdown assignee', :js do include FilteredSearchHelpers - let!(:project) { create(:project) } - let!(:user) { create(:user, name: 'administrator', username: 'root') } + let_it_be(:project) { create(:project) } + let_it_be(:user) { create(:user, name: 'administrator', username: 'root') } + let_it_be(:issue) { create(:issue, project: project) } + let(:js_dropdown_assignee) { '#js-dropdown-assignee' } let(:filter_dropdown) { find("#{js_dropdown_assignee} .filter-dropdown") } before do project.add_maintainer(user) sign_in(user) - create(:issue, project: project) visit project_issues_path(project) end diff --git a/spec/features/issues/filtered_search/dropdown_author_spec.rb b/spec/features/issues/filtered_search/dropdown_author_spec.rb index 91c85825a17..893ffc6575b 100644 --- a/spec/features/issues/filtered_search/dropdown_author_spec.rb +++ b/spec/features/issues/filtered_search/dropdown_author_spec.rb @@ -5,15 +5,16 @@ require 'spec_helper' RSpec.describe 'Dropdown author', :js do include FilteredSearchHelpers - let!(:project) { create(:project) } - let!(:user) { create(:user, name: 'administrator', username: 'root') } + let_it_be(:project) { create(:project) } + let_it_be(:user) { create(:user, name: 'administrator', username: 'root') } + let_it_be(:issue) { create(:issue, project: project) } + let(:js_dropdown_author) { '#js-dropdown-author' } let(:filter_dropdown) { find("#{js_dropdown_author} .filter-dropdown") } before do project.add_maintainer(user) sign_in(user) - create(:issue, project: project) visit project_issues_path(project) end diff --git a/spec/features/issues/filtered_search/dropdown_base_spec.rb b/spec/features/issues/filtered_search/dropdown_base_spec.rb index d730525cb8b..3a304515cab 100644 --- a/spec/features/issues/filtered_search/dropdown_base_spec.rb +++ b/spec/features/issues/filtered_search/dropdown_base_spec.rb @@ -5,8 +5,10 @@ require 'spec_helper' RSpec.describe 'Dropdown base', :js do include FilteredSearchHelpers - let!(:project) { create(:project) } - let!(:user) { create(:user, name: 'administrator', username: 'root') } + let_it_be(:project) { create(:project) } + let_it_be(:user) { create(:user, name: 'administrator', username: 'root') } + let_it_be(:issue) { create(:issue, project: project) } + let(:filtered_search) { find('.filtered-search') } let(:js_dropdown_assignee) { '#js-dropdown-assignee' } let(:filter_dropdown) { find("#{js_dropdown_assignee} .filter-dropdown") } @@ -18,7 +20,6 @@ RSpec.describe 'Dropdown base', :js do before do project.add_maintainer(user) sign_in(user) - create(:issue, project: project) visit project_issues_path(project) end diff --git a/spec/features/issues/filtered_search/dropdown_emoji_spec.rb b/spec/features/issues/filtered_search/dropdown_emoji_spec.rb index c2c933f8a86..f5ab53d5052 100644 --- a/spec/features/issues/filtered_search/dropdown_emoji_spec.rb +++ b/spec/features/issues/filtered_search/dropdown_emoji_spec.rb @@ -5,10 +5,11 @@ require 'spec_helper' RSpec.describe 'Dropdown emoji', :js do include FilteredSearchHelpers - let!(:project) { create(:project, :public) } - let!(:user) { create(:user, name: 'administrator', username: 'root') } - let!(:issue) { create(:issue, project: project) } - let!(:award_emoji_star) { create(:award_emoji, name: 'star', user: user, awardable: issue) } + let_it_be(:project) { create(:project, :public) } + let_it_be(:user) { create(:user, name: 'administrator', username: 'root') } + let_it_be(:issue) { create(:issue, project: project) } + let_it_be(:award_emoji_star) { create(:award_emoji, name: 'star', user: user, awardable: issue) } + let(:filtered_search) { find('.filtered-search') } let(:js_dropdown_emoji) { '#js-dropdown-my-reaction' } let(:filter_dropdown) { find("#{js_dropdown_emoji} .filter-dropdown") } diff --git a/spec/features/issues/filtered_search/dropdown_hint_spec.rb b/spec/features/issues/filtered_search/dropdown_hint_spec.rb index 9edc6e0b593..9cc58a33bb7 100644 --- a/spec/features/issues/filtered_search/dropdown_hint_spec.rb +++ b/spec/features/issues/filtered_search/dropdown_hint_spec.rb @@ -5,8 +5,10 @@ require 'spec_helper' RSpec.describe 'Dropdown hint', :js do include FilteredSearchHelpers - let!(:project) { create(:project, :public) } - let!(:user) { create(:user) } + let_it_be(:project) { create(:project, :public) } + let_it_be(:user) { create(:user) } + let_it_be(:issue) { create(:issue, project: project) } + let(:filtered_search) { find('.filtered-search') } let(:js_dropdown_hint) { '#js-dropdown-hint' } let(:js_dropdown_operator) { '#js-dropdown-operator' } @@ -21,8 +23,6 @@ RSpec.describe 'Dropdown hint', :js do before do project.add_maintainer(user) - create(:issue, project: project) - create(:merge_request, source_project: project, target_project: project) end context 'when user not logged in' do diff --git a/spec/features/issues/filtered_search/dropdown_label_spec.rb b/spec/features/issues/filtered_search/dropdown_label_spec.rb index c0d5fe0d860..1b48810f716 100644 --- a/spec/features/issues/filtered_search/dropdown_label_spec.rb +++ b/spec/features/issues/filtered_search/dropdown_label_spec.rb @@ -5,22 +5,23 @@ require 'spec_helper' RSpec.describe 'Dropdown label', :js do include FilteredSearchHelpers - let(:project) { create(:project) } - let(:user) { create(:user) } + let_it_be(:project) { create(:project) } + let_it_be(:user) { create(:user) } + let_it_be(:issue) { create(:issue, project: project) } + let_it_be(:label) { create(:label, project: project, title: 'bug-label') } + let(:filtered_search) { find('.filtered-search') } let(:filter_dropdown) { find('#js-dropdown-label .filter-dropdown') } before do project.add_maintainer(user) sign_in(user) - create(:issue, project: project) visit project_issues_path(project) end describe 'behavior' do it 'loads all the labels when opened' do - create(:label, project: project, title: 'bug-label') filtered_search.set('label:=') expect_filtered_search_dropdown_results(filter_dropdown, 1) diff --git a/spec/features/issues/filtered_search/dropdown_milestone_spec.rb b/spec/features/issues/filtered_search/dropdown_milestone_spec.rb index 68afd973f1d..859d1e4a5e5 100644 --- a/spec/features/issues/filtered_search/dropdown_milestone_spec.rb +++ b/spec/features/issues/filtered_search/dropdown_milestone_spec.rb @@ -5,10 +5,11 @@ require 'spec_helper' RSpec.describe 'Dropdown milestone', :js do include FilteredSearchHelpers - let!(:project) { create(:project) } - let!(:user) { create(:user) } - let!(:milestone) { create(:milestone, title: 'v1.0', project: project) } - let!(:uppercase_milestone) { create(:milestone, title: 'CAP_MILESTONE', project: project) } + let_it_be(:project) { create(:project) } + let_it_be(:user) { create(:user) } + let_it_be(:milestone) { create(:milestone, title: 'v1.0', project: project) } + let_it_be(:uppercase_milestone) { create(:milestone, title: 'CAP_MILESTONE', project: project) } + let_it_be(:issue) { create(:issue, project: project) } let(:filtered_search) { find('.filtered-search') } let(:filter_dropdown) { find('#js-dropdown-milestone .filter-dropdown') } @@ -16,7 +17,6 @@ RSpec.describe 'Dropdown milestone', :js do before do project.add_maintainer(user) sign_in(user) - create(:issue, project: project) visit project_issues_path(project) end diff --git a/spec/features/issues/filtered_search/dropdown_release_spec.rb b/spec/features/issues/filtered_search/dropdown_release_spec.rb index daf686c2850..2210a26c251 100644 --- a/spec/features/issues/filtered_search/dropdown_release_spec.rb +++ b/spec/features/issues/filtered_search/dropdown_release_spec.rb @@ -5,10 +5,11 @@ require 'spec_helper' RSpec.describe 'Dropdown release', :js do include FilteredSearchHelpers - let!(:project) { create(:project, :repository) } - let!(:user) { create(:user) } - let!(:release) { create(:release, tag: 'v1.0', project: project) } - let!(:crazy_release) { create(:release, tag: '☺!/"#%&\'{}+,-.<>;=@]_`{|}🚀', project: project) } + let_it_be(:project) { create(:project, :repository) } + let_it_be(:user) { create(:user) } + let_it_be(:release) { create(:release, tag: 'v1.0', project: project) } + let_it_be(:crazy_release) { create(:release, tag: '☺!/"#%&\'{}+,-.<>;=@]_`{|}🚀', project: project) } + let_it_be(:issue) { create(:issue, project: project) } let(:filtered_search) { find('.filtered-search') } let(:filter_dropdown) { find('#js-dropdown-release .filter-dropdown') } @@ -16,7 +17,6 @@ RSpec.describe 'Dropdown release', :js do before do project.add_maintainer(user) sign_in(user) - create(:issue, project: project) visit project_issues_path(project) end diff --git a/spec/features/issues/filtered_search/recent_searches_spec.rb b/spec/features/issues/filtered_search/recent_searches_spec.rb index 61c1e35f3c8..3ddcbf1bd01 100644 --- a/spec/features/issues/filtered_search/recent_searches_spec.rb +++ b/spec/features/issues/filtered_search/recent_searches_spec.rb @@ -6,14 +6,15 @@ RSpec.describe 'Recent searches', :js do include FilteredSearchHelpers include MobileHelpers - let(:project_1) { create(:project, :public) } - let(:project_2) { create(:project, :public) } + let_it_be(:project_1) { create(:project, :public) } + let_it_be(:project_2) { create(:project, :public) } + let_it_be(:issue_1) { create(:issue, project: project_1) } + let_it_be(:issue_2) { create(:issue, project: project_2) } + let(:project_1_local_storage_key) { "#{project_1.full_path}-issue-recent-searches" } before do Capybara.ignore_hidden_elements = false - create(:issue, project: project_1) - create(:issue, project: project_2) # Visit any fast-loading page so we can clear local storage without a DOM exception visit '/404' diff --git a/spec/features/issues/filtered_search/search_bar_spec.rb b/spec/features/issues/filtered_search/search_bar_spec.rb index 2a094281133..1efcc329e32 100644 --- a/spec/features/issues/filtered_search/search_bar_spec.rb +++ b/spec/features/issues/filtered_search/search_bar_spec.rb @@ -5,14 +5,15 @@ require 'spec_helper' RSpec.describe 'Search bar', :js do include FilteredSearchHelpers - let!(:project) { create(:project) } - let!(:user) { create(:user) } + let_it_be(:project) { create(:project) } + let_it_be(:user) { create(:user) } + let_it_be(:issue) { create(:issue, project: project) } + let(:filtered_search) { find('.filtered-search') } before do project.add_maintainer(user) sign_in(user) - create(:issue, project: project) visit project_issues_path(project) end diff --git a/spec/features/issues/filtered_search/visual_tokens_spec.rb b/spec/features/issues/filtered_search/visual_tokens_spec.rb index c585d7f6194..644d7cc4611 100644 --- a/spec/features/issues/filtered_search/visual_tokens_spec.rb +++ b/spec/features/issues/filtered_search/visual_tokens_spec.rb @@ -5,13 +5,14 @@ require 'spec_helper' RSpec.describe 'Visual tokens', :js do include FilteredSearchHelpers - let!(:project) { create(:project) } - let!(:user) { create(:user, name: 'administrator', username: 'root') } - let!(:user_rock) { create(:user, name: 'The Rock', username: 'rock') } - let!(:milestone_nine) { create(:milestone, title: '9.0', project: project) } - let!(:milestone_ten) { create(:milestone, title: '10.0', project: project) } - let!(:label) { create(:label, project: project, title: 'abc') } - let!(:cc_label) { create(:label, project: project, title: 'Community Contribution') } + let_it_be(:project) { create(:project) } + let_it_be(:user) { create(:user, name: 'administrator', username: 'root') } + let_it_be(:user_rock) { create(:user, name: 'The Rock', username: 'rock') } + let_it_be(:milestone_nine) { create(:milestone, title: '9.0', project: project) } + let_it_be(:milestone_ten) { create(:milestone, title: '10.0', project: project) } + let_it_be(:label) { create(:label, project: project, title: 'abc') } + let_it_be(:cc_label) { create(:label, project: project, title: 'Community Contribution') } + let_it_be(:issue) { create(:issue, project: project) } let(:filtered_search) { find('.filtered-search') } let(:filter_author_dropdown) { find("#js-dropdown-author .filter-dropdown") } @@ -27,7 +28,6 @@ RSpec.describe 'Visual tokens', :js do project.add_user(user, :maintainer) project.add_user(user_rock, :maintainer) sign_in(user) - create(:issue, project: project) set_cookie('sidebar_collapsed', 'true') |