summaryrefslogtreecommitdiff
path: root/spec/features/issues
diff options
context:
space:
mode:
Diffstat (limited to 'spec/features/issues')
-rw-r--r--spec/features/issues/filtered_search/dropdown_assignee_spec.rb7
-rw-r--r--spec/features/issues/filtered_search/dropdown_author_spec.rb7
-rw-r--r--spec/features/issues/filtered_search/dropdown_base_spec.rb7
-rw-r--r--spec/features/issues/filtered_search/dropdown_emoji_spec.rb9
-rw-r--r--spec/features/issues/filtered_search/dropdown_hint_spec.rb8
-rw-r--r--spec/features/issues/filtered_search/dropdown_label_spec.rb9
-rw-r--r--spec/features/issues/filtered_search/dropdown_milestone_spec.rb10
-rw-r--r--spec/features/issues/filtered_search/dropdown_release_spec.rb10
-rw-r--r--spec/features/issues/filtered_search/recent_searches_spec.rb9
-rw-r--r--spec/features/issues/filtered_search/search_bar_spec.rb7
-rw-r--r--spec/features/issues/filtered_search/visual_tokens_spec.rb16
-rw-r--r--spec/features/issues/incident_issue_spec.rb49
-rw-r--r--spec/features/issues/issue_sidebar_spec.rb30
-rw-r--r--spec/features/issues/user_bulk_edits_issues_spec.rb8
-rw-r--r--spec/features/issues/user_edits_issue_spec.rb40
-rw-r--r--spec/features/issues/user_interacts_with_awards_spec.rb2
-rw-r--r--spec/features/issues/user_sees_breadcrumb_links_spec.rb1
-rw-r--r--spec/features/issues/user_sorts_issues_spec.rb23
18 files changed, 149 insertions, 103 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')
diff --git a/spec/features/issues/incident_issue_spec.rb b/spec/features/issues/incident_issue_spec.rb
index d004ee85dd8..3033a138551 100644
--- a/spec/features/issues/incident_issue_spec.rb
+++ b/spec/features/issues/incident_issue_spec.rb
@@ -3,20 +3,57 @@
require 'spec_helper'
RSpec.describe 'Incident Detail', :js do
+ let_it_be(:project) { create(:project, :public) }
+ let_it_be(:payload) do
+ {
+ 'title' => 'Alert title',
+ 'start_time' => '2020-04-27T10:10:22.265949279Z',
+ 'custom' => {
+ 'alert' => {
+ 'fields' => %w[one two]
+ }
+ },
+ 'yet' => {
+ 'another' => 73
+ }
+ }
+ end
+
+ let_it_be(:user) { create(:user) }
+ let_it_be(:started_at) { Time.now.rfc3339 }
+ let_it_be(:alert) { create(:alert_management_alert, project: project, payload: payload, started_at: started_at) }
+ let_it_be(:incident) { create(:incident, project: project, description: 'hello', alert_management_alert: alert) }
+
context 'when user displays the incident' do
- it 'shows the incident tabs' do
- project = create(:project, :public)
- incident = create(:incident, project: project, description: 'hello')
+ before do
+ project.add_developer(user)
+ sign_in(user)
visit project_issue_path(project, incident)
wait_for_requests
+ end
+ it 'shows incident and alert data' do
page.within('.issuable-details') do
incident_tabs = find('[data-testid="incident-tabs"]')
- expect(find('h2')).to have_content(incident.title)
- expect(incident_tabs).to have_content('Summary')
- expect(incident_tabs).to have_content(incident.description)
+ aggregate_failures 'shows title and Summary tab' do
+ expect(find('h2')).to have_content(incident.title)
+ expect(incident_tabs).to have_content('Summary')
+ expect(incident_tabs).to have_content(incident.description)
+ end
+
+ aggregate_failures 'shows the incident highlight bar' do
+ expect(incident_tabs).to have_content('Alert events: 1')
+ expect(incident_tabs).to have_content('Original alert: #1')
+ end
+
+ aggregate_failures 'shows the Alert details tab' do
+ click_link 'Alert details'
+
+ expect(incident_tabs).to have_content('"title": "Alert title"')
+ expect(incident_tabs).to have_content('"yet.another": 73')
+ end
end
end
end
diff --git a/spec/features/issues/issue_sidebar_spec.rb b/spec/features/issues/issue_sidebar_spec.rb
index d828b1c1f0c..0e2ef5cc6eb 100644
--- a/spec/features/issues/issue_sidebar_spec.rb
+++ b/spec/features/issues/issue_sidebar_spec.rb
@@ -259,37 +259,35 @@ RSpec.describe 'Issue Sidebar' do
end
context 'editing issue milestone', :js do
- let_it_be(:milestone_expired) { create(:milestone, project: project, due_date: 5.days.ago) }
+ let_it_be(:milestone_expired) { create(:milestone, project: project, title: 'Foo - expired', due_date: 5.days.ago) }
let_it_be(:milestone_no_duedate) { create(:milestone, project: project, title: 'Foo - No due date') }
let_it_be(:milestone1) { create(:milestone, project: project, title: 'Milestone-1', due_date: 20.days.from_now) }
let_it_be(:milestone2) { create(:milestone, project: project, title: 'Milestone-2', due_date: 15.days.from_now) }
let_it_be(:milestone3) { create(:milestone, project: project, title: 'Milestone-3', due_date: 10.days.from_now) }
before do
- page.within('[data-testid="milestone_title"]') do
- click_on 'Edit'
+ page.within('.block.milestone') do
+ click_button 'Edit'
end
+
+ wait_for_all_requests
end
- it 'shows milestons list in the dropdown' do
- page.within('.block.milestone .dropdown-content') do
+ it 'shows milestones list in the dropdown' do
+ page.within('.block.milestone') do
# 5 milestones + "No milestone" = 6 items
- expect(page.find('ul')).to have_selector('li[data-milestone-id]', count: 6)
+ expect(page.find('.gl-new-dropdown-contents')).to have_selector('li.gl-new-dropdown-item', count: 6)
end
end
- it 'shows expired milestone at the bottom of the list' do
- page.within('.block.milestone .dropdown-content ul') do
+ it 'shows expired milestone at the bottom of the list and milestone due earliest at the top of the list', :aggregate_failures do
+ page.within('.block.milestone .gl-new-dropdown-contents') do
expect(page.find('li:last-child')).to have_content milestone_expired.title
- end
- end
- it 'shows milestone due earliest at the top of the list' do
- page.within('.block.milestone .dropdown-content ul') do
- expect(page.all('li[data-milestone-id]')[1]).to have_content milestone3.title
- expect(page.all('li[data-milestone-id]')[2]).to have_content milestone2.title
- expect(page.all('li[data-milestone-id]')[3]).to have_content milestone1.title
- expect(page.all('li[data-milestone-id]')[4]).to have_content milestone_no_duedate.title
+ expect(page.all('li.gl-new-dropdown-item')[1]).to have_content milestone3.title
+ expect(page.all('li.gl-new-dropdown-item')[2]).to have_content milestone2.title
+ expect(page.all('li.gl-new-dropdown-item')[3]).to have_content milestone1.title
+ expect(page.all('li.gl-new-dropdown-item')[4]).to have_content milestone_no_duedate.title
end
end
end
diff --git a/spec/features/issues/user_bulk_edits_issues_spec.rb b/spec/features/issues/user_bulk_edits_issues_spec.rb
index e34c16e27ba..44c23813e3c 100644
--- a/spec/features/issues/user_bulk_edits_issues_spec.rb
+++ b/spec/features/issues/user_bulk_edits_issues_spec.rb
@@ -13,26 +13,26 @@ RSpec.describe 'Multiple issue updating from issues#index', :js do
end
context 'status' do
- it 'sets to closed' do
+ it 'sets to closed', :js do
visit project_issues_path(project)
click_button 'Edit issues'
check 'Select all'
click_button 'Select status'
- click_link 'Closed'
+ click_button 'Closed'
click_update_issues_button
expect(page).to have_selector('.issue', count: 0)
end
- it 'sets to open' do
+ it 'sets to open', :js do
create_closed
visit project_issues_path(project, state: 'closed')
click_button 'Edit issues'
check 'Select all'
click_button 'Select status'
- click_link 'Open'
+ click_button 'Open'
click_update_issues_button
expect(page).to have_selector('.issue', count: 0)
diff --git a/spec/features/issues/user_edits_issue_spec.rb b/spec/features/issues/user_edits_issue_spec.rb
index c59cc99467c..e4bba706453 100644
--- a/spec/features/issues/user_edits_issue_spec.rb
+++ b/spec/features/issues/user_edits_issue_spec.rb
@@ -333,37 +333,40 @@ RSpec.describe "Issues > User edits issue", :js do
describe 'update milestone' do
context 'by authorized user' do
- it 'allows user to select unassigned' do
+ it 'allows user to select no milestone' do
visit project_issue_path(project, issue)
+ wait_for_requests
- page.within('.milestone') do
- expect(page).to have_content "None"
- end
+ page.within('.block.milestone') do
+ expect(page).to have_content 'None'
+
+ click_button 'Edit'
+ wait_for_requests
+ click_button 'No milestone'
+ wait_for_requests
- find('.block.milestone .edit-link').click
- sleep 2 # wait for ajax stuff to complete
- first('.dropdown-content li').click
- sleep 2
- page.within('.milestone') do
expect(page).to have_content 'None'
end
end
it 'allows user to de-select milestone' do
visit project_issue_path(project, issue)
+ wait_for_requests
page.within('.milestone') do
- click_link 'Edit'
- click_link milestone.title
+ click_button 'Edit'
+ wait_for_requests
+ click_button milestone.title
- page.within '.value' do
+ page.within '[data-testid="select-milestone"]' do
expect(page).to have_content milestone.title
end
- click_link 'Edit'
- click_link milestone.title
+ click_button 'Edit'
+ wait_for_requests
+ click_button 'No milestone'
- page.within '.value' do
+ page.within '[data-testid="select-milestone"]' do
expect(page).to have_content 'None'
end
end
@@ -371,16 +374,17 @@ RSpec.describe "Issues > User edits issue", :js do
it 'allows user to search milestone' do
visit project_issue_path(project_with_milestones, issue_with_milestones)
+ wait_for_requests
page.within('.milestone') do
- click_link 'Edit'
+ click_button 'Edit'
wait_for_requests
# We need to enclose search string in quotes for exact match as all the milestone titles
# within tests are prefixed with `My title`.
- find('.dropdown-input-field', visible: true).send_keys "\"#{milestones[0].title}\""
+ find('.gl-form-input', visible: true).send_keys "\"#{milestones[0].title}\""
wait_for_requests
- page.within '.dropdown-content' do
+ page.within '.gl-new-dropdown-contents' do
expect(page).to have_content milestones[0].title
end
end
diff --git a/spec/features/issues/user_interacts_with_awards_spec.rb b/spec/features/issues/user_interacts_with_awards_spec.rb
index 2921eea7641..2e52a8d862e 100644
--- a/spec/features/issues/user_interacts_with_awards_spec.rb
+++ b/spec/features/issues/user_interacts_with_awards_spec.rb
@@ -63,7 +63,7 @@ RSpec.describe 'User interacts with awards' do
page.within('.awards') do
expect(page).to have_selector('[data-testid="award-button"]')
expect(page.find('[data-testid="award-button"].selected .js-counter')).to have_content('1')
- expect(page).to have_css('[data-testid="award-button"].selected[title="You"]')
+ expect(page).to have_css('[data-testid="award-button"].selected[title="You reacted with :8ball:"]')
expect do
page.find('[data-testid="award-button"].selected').click
diff --git a/spec/features/issues/user_sees_breadcrumb_links_spec.rb b/spec/features/issues/user_sees_breadcrumb_links_spec.rb
index f5793758a9b..9f8cd2a769d 100644
--- a/spec/features/issues/user_sees_breadcrumb_links_spec.rb
+++ b/spec/features/issues/user_sees_breadcrumb_links_spec.rb
@@ -4,6 +4,7 @@ require 'spec_helper'
RSpec.describe 'New issue breadcrumb' do
let_it_be(:project, reload: true) { create(:project) }
+
let(:user) { project.creator }
before do
diff --git a/spec/features/issues/user_sorts_issues_spec.rb b/spec/features/issues/user_sorts_issues_spec.rb
index c161e1deb83..48297e9049e 100644
--- a/spec/features/issues/user_sorts_issues_spec.rb
+++ b/spec/features/issues/user_sorts_issues_spec.rb
@@ -22,11 +22,11 @@ RSpec.describe "User sorts issues" do
create(:award_emoji, :upvote, awardable: issue2)
sign_in(user)
-
- visit(project_issues_path(project))
end
it 'keeps the sort option' do
+ visit(project_issues_path(project))
+
find('.filter-dropdown-container .dropdown').click
page.within('ul.dropdown-menu.dropdown-menu-right li') do
@@ -47,11 +47,10 @@ RSpec.describe "User sorts issues" do
end
it 'sorts by popularity', :js do
- find('.filter-dropdown-container .dropdown').click
+ visit(project_issues_path(project))
- page.within('ul.dropdown-menu.dropdown-menu-right li') do
- click_link("Popularity")
- end
+ click_button 'Created date'
+ click_on 'Popularity'
page.within(".issues-list") do
page.within("li.issue:nth-child(1)") do
@@ -129,7 +128,7 @@ RSpec.describe "User sorts issues" do
it 'filters by none' do
visit project_issues_path(project, due_date: Issue::NoDueDate.name)
- page.within '.issues-holder' do
+ page.within '.issues-list' do
expect(page).not_to have_content('foo')
expect(page).not_to have_content('bar')
expect(page).to have_content('baz')
@@ -139,7 +138,7 @@ RSpec.describe "User sorts issues" do
it 'filters by any' do
visit project_issues_path(project, due_date: Issue::AnyDueDate.name)
- page.within '.issues-holder' do
+ page.within '.issues-list' do
expect(page).to have_content('foo')
expect(page).to have_content('bar')
expect(page).to have_content('baz')
@@ -153,7 +152,7 @@ RSpec.describe "User sorts issues" do
visit project_issues_path(project, due_date: Issue::DueThisWeek.name)
- page.within '.issues-holder' do
+ page.within '.issues-list' do
expect(page).to have_content('foo')
expect(page).to have_content('bar')
expect(page).not_to have_content('baz')
@@ -167,7 +166,7 @@ RSpec.describe "User sorts issues" do
visit project_issues_path(project, due_date: Issue::DueThisMonth.name)
- page.within '.issues-holder' do
+ page.within '.issues-list' do
expect(page).to have_content('foo')
expect(page).to have_content('bar')
expect(page).not_to have_content('baz')
@@ -181,7 +180,7 @@ RSpec.describe "User sorts issues" do
visit project_issues_path(project, due_date: Issue::Overdue.name)
- page.within '.issues-holder' do
+ page.within '.issues-list' do
expect(page).not_to have_content('foo')
expect(page).not_to have_content('bar')
expect(page).to have_content('baz')
@@ -195,7 +194,7 @@ RSpec.describe "User sorts issues" do
visit project_issues_path(project, due_date: Issue::DueNextMonthAndPreviousTwoWeeks.name)
- page.within '.issues-holder' do
+ page.within '.issues-list' do
expect(page).not_to have_content('foo')
expect(page).not_to have_content('bar')
expect(page).to have_content('baz')