diff options
Diffstat (limited to 'spec/helpers/issues_helper_spec.rb')
-rw-r--r-- | spec/helpers/issues_helper_spec.rb | 84 |
1 files changed, 4 insertions, 80 deletions
diff --git a/spec/helpers/issues_helper_spec.rb b/spec/helpers/issues_helper_spec.rb index 0cde9aeac8d..72fa264698d 100644 --- a/spec/helpers/issues_helper_spec.rb +++ b/spec/helpers/issues_helper_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -RSpec.describe IssuesHelper do +RSpec.describe IssuesHelper, feature_category: :team_planning do include Features::MergeRequestHelpers let_it_be(:project) { create(:project) } @@ -136,86 +136,11 @@ RSpec.describe IssuesHelper do end end - describe '#issue_closed_link' do - let(:new_issue) { create(:issue, project: project) } - let(:guest) { create(:user) } - - before do - allow(helper).to receive(:can?) do |*args| - Ability.allowed?(*args) - end - end - - shared_examples 'successfully displays link to issue and with css class' do |action| - it 'returns link' do - link = "<a class=\"#{css_class}\" href=\"/#{new_issue.project.full_path}/-/issues/#{new_issue.iid}\">(#{action})</a>" - - expect(helper.issue_closed_link(issue, user, css_class: css_class)).to match(link) - end - end - - shared_examples 'does not display link' do - it 'returns nil' do - expect(helper.issue_closed_link(issue, user)).to be_nil - end - end - - context 'with linked issue' do - context 'with moved issue' do - before do - issue.update!(moved_to: new_issue) - end - - context 'when user has permission to see new issue' do - let(:user) { project.owner } - let(:css_class) { 'text-white text-underline' } - - it_behaves_like 'successfully displays link to issue and with css class', 'moved' - end - - context 'when user has no permission to see new issue' do - let(:user) { guest } - - it_behaves_like 'does not display link' - end - end - - context 'with duplicated issue' do - before do - issue.update!(duplicated_to: new_issue) - end - - context 'when user has permission to see new issue' do - let(:user) { project.owner } - let(:css_class) { 'text-white text-underline' } - - it_behaves_like 'successfully displays link to issue and with css class', 'duplicated' - end - - context 'when user has no permission to see new issue' do - let(:user) { guest } - - it_behaves_like 'does not display link' - end - end - end - - context 'without linked issue' do - let(:user) { project.owner } - - before do - issue.update!(moved_to: nil, duplicated_to: nil) - end - - it_behaves_like 'does not display link' - end - end - describe '#show_moved_service_desk_issue_warning?' do let(:project1) { create(:project, service_desk_enabled: true) } let(:project2) { create(:project, service_desk_enabled: true) } - let!(:old_issue) { create(:issue, author: User.support_bot, project: project1) } - let!(:new_issue) { create(:issue, author: User.support_bot, project: project2) } + let!(:old_issue) { create(:issue, author: Users::Internal.support_bot, project: project1) } + let!(:new_issue) { create(:issue, author: Users::Internal.support_bot, project: project2) } before do allow(Gitlab::Email::IncomingEmail).to receive(:enabled?) { true } @@ -249,14 +174,13 @@ RSpec.describe IssuesHelper do it 'returns expected result' do expected = { can_create_issue: 'true', + can_create_incident: 'true', can_destroy_issue: 'true', can_reopen_issue: 'true', can_report_spam: 'false', can_update_issue: 'true', - iid: issue.iid, is_issue_author: 'false', issue_path: issue_path(issue), - issue_type: 'issue', new_issue_path: new_project_issue_path(project, { add_related_issue: issue.iid }), project_path: project.full_path, report_abuse_path: add_category_abuse_reports_path, |