summaryrefslogtreecommitdiff
path: root/spec/features/merge_requests/admin_views_hidden_merge_requests_spec.rb
blob: e7727fbb9dc8755583445f1da276737d284a4a29 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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