Skip to content
Snippets Groups Projects

Fix Flaky Spec in Issue State Tests

Merged John Hope requested to merge jh-fix-flaky-spec-297201 into master
All threads resolved!
1 file
+ 13
7
Compare changes
  • Side-by-side
  • Inline
@@ -3,26 +3,32 @@
@@ -3,26 +3,32 @@
require 'spec_helper'
require 'spec_helper'
RSpec.describe 'issue state', :js, feature_category: :team_planning do
RSpec.describe 'issue state', :js, feature_category: :team_planning do
let_it_be(:project) { create(:project) }
include CookieHelper
 
 
let_it_be(:group) { create(:group) }
 
let_it_be(:project) { create(:project, group: group) }
let_it_be(:user) { create(:user) }
let_it_be(:user) { create(:user) }
before do
before do
project.add_developer(user)
project.add_developer(user)
sign_in(user)
sign_in(user)
 
set_cookie('new-actions-popover-viewed', 'true')
 
stub_feature_flags(move_close_into_dropdown: false)
end
end
shared_examples 'issue closed' do |selector|
shared_examples 'issue closed' do |selector|
it 'can close an issue' do
it 'can close an issue' do
wait_for_requests
wait_for_requests
 
expect(page).to have_selector('[data-testid="issue-state-badge"]')
expect(find('.status-box')).to have_content 'Open'
expect(find('[data-testid="issue-state-badge"]')).to have_content 'Open'
within selector do
within selector do
click_button 'Close issue'
click_button 'Close issue'
wait_for_requests
wait_for_requests
end
end
expect(find('.status-box')).to have_content 'Closed'
expect(find('[data-testid="issue-state-badge"]')).to have_content 'Closed'
end
end
end
end
@@ -34,7+40,7 @@
@@ -34,7+40,7 @@
expect(find('[data-testid="issue-state-badge"]')).to have_content 'Closed'
expect(find('[data-testid="issue-state-badge"]')).to have_content 'Closed'
within selector do
within selector do
click_button 'Reopen issue'
click_button 'Reopen issue'
wait_for_requests
wait_for_requests
end
end
@@ -42,7+48,7 @@
@@ -42,7+48,7 @@
end
end
end
end
describe 'when open', quarantine: 'https://gitlab.com/gitlab-org/gitlab/-/issues/297348' do
describe 'when open' do
context 'when clicking the top `Close issue` button', :aggregate_failures do
context 'when clicking the top `Close issue` button', :aggregate_failures do
let(:open_issue) { create(:issue, project: project) }
let(:open_issue) { create(:issue, project: project) }
@@ -50,7 +56,7 @@
@@ -50,7 +56,7 @@
visit project_issue_path(project, open_issue)
visit project_issue_path(project, open_issue)
end
end
it_behaves_like 'issue closed', '.detail-page-header'
it_behaves_like 'issue closed', '.detail-page-header-actions'
end
end
context 'when clicking the bottom `Close issue` button', :aggregate_failures do
context 'when clicking the bottom `Close issue` button', :aggregate_failures do
@@ -66,13 +72,13 @@
@@ -66,13 +72,13 @@
describe 'when closed' do
describe 'when closed' do
context 'when clicking the top `Reopen issue` button', :aggregate_failures do
context 'when clicking the top `Reopen issue` button', :aggregate_failures do
let(:closed_issue) { create(:issue, project: project, state: 'closed') }
let(:closed_issue) { create(:issue, project: project, state: 'closed', author: user) }
before do
before do
visit project_issue_path(project, closed_issue)
visit project_issue_path(project, closed_issue)
end
end
it_behaves_like 'issue reopened', '.detail-page-header'
it_behaves_like 'issue reopened', '.detail-page-header-actions'
end
end
context 'when clicking the bottom `Reopen issue` button', :aggregate_failures do
context 'when clicking the bottom `Reopen issue` button', :aggregate_failures do
Loading