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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
# frozen_string_literal: true
require 'spec_helper'
RSpec.describe 'Project issue boards sidebar', :js, feature_category: :portfolio_management do
include BoardHelpers
let_it_be(:user) { create(:user) }
let_it_be(:group) { create(:group, :public) }
let_it_be(:project) { create(:project, :public, namespace: group) }
let_it_be(:board) { create(:board, project: project) }
let_it_be(:label) { create(:label, project: project, name: 'Label') }
let_it_be(:list) { create(:list, board: board, label: label, position: 0) }
let_it_be(:issue, reload: true) { create(:issue, project: project, relative_position: 1) }
before do
project.add_maintainer(user)
end
context 'when issues drawer is disabled' do
before do
stub_feature_flags(issues_list_drawer: false)
sign_in(user)
visit project_board_path(project, board)
wait_for_requests
end
it_behaves_like 'issue boards sidebar'
end
context 'when issues drawer is enabled' do
before do
sign_in(user)
visit project_board_path(project, board)
wait_for_requests
end
it_behaves_like 'work item drawer'
end
def first_card
find('[data-testid="board-list"]:nth-child(1)').first("[data-testid='board-card']")
end
def click_first_issue_card
click_card(first_card)
end
def refresh_and_click_first_card
page.refresh
wait_for_requests
first_card.click
end
end
|