OpenProject is the leading open source project management software.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openproject/spec/features/work_packages/details/details_relations_spec.rb

60 lines
1.8 KiB

require 'spec_helper'
describe 'Work package relations tab', js: true, selenium: true do
let(:user) { FactoryGirl.create :admin }
let(:work_package) { FactoryGirl.create(:work_package) }
let(:work_packages_page) { ::Pages::SplitWorkPackage.new(work_package) }
before do
login_as user
work_packages_page.visit_tab!('relations')
loading_indicator_saveguard
work_packages_page.expect_subject
end
describe 'no relations' do
it 'shows empty relation tabs' do
%w(parent children relates duplicates
duplicated blocks blocked precedes follows).each do |rel|
within ".relation.#{rel}" do
find(".#{rel}-toggle-link").click
expect(page).to have_selector('.content', text: 'No relation exists')
end
end
end
end
describe 'with parent' do
let(:parent) { FactoryGirl.create(:work_package) }
let(:work_package) { FactoryGirl.create(:work_package, parent: parent) }
it 'shows the parent relationship expanded' do
expect(page).to have_selector('.parent .work_package',
text: "##{parent.id} #{parent.type}: #{parent.subject}")
end
end
describe 'create parent relationship' do
let(:parent) { FactoryGirl.create(:work_package) }
let(:work_package) { FactoryGirl.create(:work_package) }
include_context 'ui-select helpers'
it 'shows the parent relationship expanded' do
within '.relation.parent' do
# Expand parent
find('.parent-toggle-link').click
form = find('.choice--select')
ui_select_choose(form, parent.subject)
click_button 'Change parent'
expect(page).to have_selector('.parent .work_package',
text: "##{parent.id} #{parent.type}: #{parent.subject}")
end
end
end
end