summaryrefslogtreecommitdiff
path: root/spec/features/merge_requests/admin_views_hidden_merge_requests_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/features/merge_requests/admin_views_hidden_merge_requests_spec.rb')
-rw-r--r--spec/features/merge_requests/admin_views_hidden_merge_requests_spec.rb27
1 files changed, 27 insertions, 0 deletions
diff --git a/spec/features/merge_requests/admin_views_hidden_merge_requests_spec.rb b/spec/features/merge_requests/admin_views_hidden_merge_requests_spec.rb
new file mode 100644
index 00000000000..e7727fbb9dc
--- /dev/null
+++ b/spec/features/merge_requests/admin_views_hidden_merge_requests_spec.rb
@@ -0,0 +1,27 @@
+# frozen_string_literal: true
+
+require 'spec_helper'
+
+RSpec.describe 'Admin views hidden merge requests', feature_category: :insider_threat do
+ context 'when signed in as admin and viewing a hidden merge request' do
+ let_it_be(:admin) { create(:admin) }
+ let_it_be(:author) { create(:user, :banned) }
+ let_it_be(:project) { create(:project) }
+ let!(:merge_request) { create(:merge_request, source_project: project, author: author) }
+
+ before do
+ sign_in(admin)
+ gitlab_enable_admin_mode_sign_in(admin)
+ visit(project_merge_requests_path(project))
+ end
+
+ it 'shows a hidden merge request icon' do
+ page.within("#merge_request_#{merge_request.id}") do
+ tooltip = format(_('This %{issuable} is hidden because its author has been banned'),
+ issuable: _('merge request'))
+ expect(page).to have_css("span[title='#{tooltip}']")
+ expect(page).to have_css('svg[data-testid="spam-icon"]')
+ end
+ end
+ end
+end