Remove unused Backlog pages methods, use work_package instead of story in method and argument names

This commit is contained in:
Dombi Attila
2026-05-26 16:58:39 +03:00
parent 2489fc547c
commit 9d269583bf
7 changed files with 38 additions and 95 deletions
@@ -83,8 +83,8 @@ RSpec.describe "Edit", :js do
it "lists all open sprints" do
planning_page.expect_sprint_names_in_order(first_sprint.name, second_sprint.name)
planning_page.expect_story_in_sprint(work_package, first_sprint)
planning_page.expect_story_not_in_sprint(work_package, second_sprint)
planning_page.expect_work_package_in_sprint(work_package, first_sprint)
planning_page.expect_work_package_not_in_sprint(work_package, second_sprint)
end
it "adds a work package to a sprint" do
@@ -102,7 +102,7 @@ RSpec.describe "Edit", :js do
expect_and_dismiss_flash type: :success, exact_message: "Successful creation."
created_wp = first_sprint.reload.work_packages.last
expect(created_wp.subject).to eq("Story created in sprint")
planning_page.expect_story_in_sprint(created_wp, first_sprint)
planning_page.expect_work_package_in_sprint(created_wp, first_sprint)
end
context "with the 'create_sprints' permissions" do
@@ -195,8 +195,8 @@ RSpec.describe "Backlogs settings effect on backlog and sprints", :js do
end
def expect_sprint_items_unaffected
backlog_page.expect_story_in_sprint(sprint_done_work_package, active_sprint)
backlog_page.expect_story_in_sprint(sprint_excluded_type_work_package, active_sprint)
backlog_page.expect_story_in_sprint(sprint_visible_work_package, active_sprint)
backlog_page.expect_work_package_in_sprint(sprint_done_work_package, active_sprint)
backlog_page.expect_work_package_in_sprint(sprint_excluded_type_work_package, active_sprint)
backlog_page.expect_work_package_in_sprint(sprint_visible_work_package, active_sprint)
end
end
@@ -54,7 +54,7 @@ RSpec.describe "Sprint header", :js do
backlog_page.visit!
backlog_page.expect_sprint_story_points(sprint, 8)
backlog_page.expect_sprint_story_count(sprint, 2)
backlog_page.expect_sprint_work_package_count(sprint, 2)
end
end
end
@@ -281,7 +281,7 @@ RSpec.describe "Inbox column in sprint planning view", :js do
end
planning_page.expect_no_inbox_item(inbox_wp1)
planning_page.expect_story_in_sprint(inbox_wp1, sprint)
planning_page.expect_work_package_in_sprint(inbox_wp1, sprint)
planning_page.expect_work_packages_in_sprint_in_order(sprint, work_packages: [sprint_wp, inbox_wp1])
end
@@ -306,7 +306,7 @@ RSpec.describe "Inbox column in sprint planning view", :js do
# Item was *not* moved:
planning_page.expect_inbox_item(inbox_wp1)
planning_page.expect_story_not_in_sprint(inbox_wp1, sprint)
planning_page.expect_work_package_not_in_sprint(inbox_wp1, sprint)
end
end
end
@@ -323,9 +323,9 @@ RSpec.describe "Inbox column in sprint planning view", :js do
planning_page.expect_no_inbox_item(inbox_wp3)
planning_page.expect_inbox_blankslate
planning_page.expect_story_in_sprint(inbox_wp1, sprint)
planning_page.expect_story_in_sprint(inbox_wp2, sprint)
planning_page.expect_story_in_sprint(inbox_wp3, sprint)
planning_page.expect_work_package_in_sprint(inbox_wp1, sprint)
planning_page.expect_work_package_in_sprint(inbox_wp2, sprint)
planning_page.expect_work_package_in_sprint(inbox_wp3, sprint)
end
context "with real authentication and a private project" do
@@ -412,8 +412,8 @@ RSpec.describe "Inbox column in sprint planning view", :js do
planning_page.drag_work_package_to_backlog_inbox(sprint_wp2)
wait_for_network_idle
planning_page.expect_story_not_in_sprint(sprint_wp1, sprint)
planning_page.expect_story_not_in_sprint(sprint_wp2, sprint)
planning_page.expect_work_package_not_in_sprint(sprint_wp1, sprint)
planning_page.expect_work_package_not_in_sprint(sprint_wp2, sprint)
planning_page.expect_inbox_item(sprint_wp1)
planning_page.expect_inbox_item(sprint_wp2)
end
@@ -484,7 +484,7 @@ RSpec.describe "Inbox column in sprint planning view", :js do
planning_page.expect_no_inbox_show_more
# Open a sprint story details view, edit the subject, and close
details_view = planning_page.open_sprint_story_details(sprint_wp1)
details_view = planning_page.open_work_package_details(sprint_wp1)
details_view.edit_field("subject").update("Updated subject")
details_view.expect_and_dismiss_toaster message: "Successful update."
details_view.close
@@ -121,7 +121,7 @@ RSpec.describe "Create work package in sprint", :js do
created_work_package])
# created with the selected type (HighlightedTypeComponent renders type name in uppercase)
backlogs_page.within_work_package_row(created_work_package) do
backlogs_page.within_work_package(created_work_package) do
expect(page).to have_text(type2.name.upcase)
end
end
@@ -63,7 +63,7 @@ RSpec.describe "Move to backlog", :js do
wait_for_network_idle
planning_page.expect_story_not_in_sprint(work_package, sprint)
planning_page.expect_work_package_not_in_sprint(work_package, sprint)
planning_page.expect_inbox_item(work_package)
end
end
@@ -98,7 +98,7 @@ RSpec.describe "Move to backlog", :js do
wait_for_network_idle
planning_page.expect_story_not_in_sprint(work_package, sprint)
planning_page.expect_work_package_not_in_sprint(work_package, sprint)
planning_page.expect_work_package_in_backlog_bucket(work_package, bucket_b)
end
end
@@ -153,7 +153,8 @@ RSpec.describe "Move to backlog", :js do
it "opens the dialog excluding the current sprint, and moves to another sprint" do
planning_page.visit!
planning_page.expect_story_in_sprint(work_package, sprint)
planning_page.expect_work_package_in_sprint(work_package, sprint)
planning_page.click_in_work_package_move_menu(work_package, "Move to sprint", wait: false)
within("#move-to-sprint-dialog") do
@@ -166,8 +167,8 @@ RSpec.describe "Move to backlog", :js do
wait_for_network_idle
planning_page.expect_story_not_in_sprint(work_package, sprint)
planning_page.expect_story_in_sprint(work_package, second_sprint)
planning_page.expect_work_package_not_in_sprint(work_package, sprint)
planning_page.expect_work_package_in_sprint(work_package, second_sprint)
end
end
@@ -186,7 +187,7 @@ RSpec.describe "Move to backlog", :js do
wait_for_network_idle
planning_page.expect_no_inbox_item(work_package)
planning_page.expect_story_in_sprint(work_package, sprint)
planning_page.expect_work_package_in_sprint(work_package, sprint)
end
end
@@ -205,7 +206,7 @@ RSpec.describe "Move to backlog", :js do
wait_for_network_idle
planning_page.expect_no_work_package_in_backlog_bucket(work_package, bucket_a)
planning_page.expect_story_in_sprint(work_package, sprint)
planning_page.expect_work_package_in_sprint(work_package, sprint)
end
end
end
+14 -72
View File
@@ -39,43 +39,12 @@ module Pages
@project = project
end
def alter_attributes_in_details_view(story, **attributes)
within_details_view(story) do |details_view|
attributes.each do |key, value|
details_view
.edit_field(key.to_s.camelize(:lower))
.update(value)
details_view.expect_and_dismiss_toaster message: "Successful update."
end
end
end
def edit_story_in_details_view(story, **attributes)
click_in_story_menu(story, "Open details view")
alter_attributes_in_details_view(story, **attributes)
end
def click_in_sprint_menu(sprint, item_name)
within_sprint_menu(sprint) do |menu|
menu.find(:menuitem, text: item_name).click
end
end
def click_in_story_menu(story, item_name)
within_story_menu(story) do |menu|
menu.find(:menuitem, text: item_name).click
end
end
def drag_in_sprint(moved, target, before: true)
moved_element = find(story_selector(moved))
target_element = find(story_selector(target))
drag_n_drop_element from: moved_element, to: target_element, offset_x: 0, offset_y: before ? -5 : +10
end
def sprint_names_in_order
within_sprint_backlogs do
headed_section_titles(id_prefix: "backlogs-sprint-component-")
@@ -248,16 +217,16 @@ module Pages
wait_for_network_idle
end
def open_sprint_story_details(story)
within(work_package_selector(story)) do
def open_work_package_details(work_package)
within_work_package(work_package) do
button = find(:button, accessible_name: "Work package actions")
open_controlled_menu(button).find(:menuitem, text: I18n.t(:"js.button_open_details")).click
end
expect_details_view(story)
expect_details_view(work_package)
end
def within_work_package_menu(work_package, &)
within(work_package_selector(work_package)) do
within_work_package(work_package) do
button = find(:button, accessible_name: "Work package actions")
within(open_controlled_menu(button), &)
end
@@ -353,12 +322,6 @@ module Pages
end
end
def expect_no_new_backlog_bucket_button
within_owner_backlogs do
expect(page).to have_no_link(BacklogBucket.human_model_name, exact: true)
end
end
def expect_backlog_bucket_dialog
expect(page).to have_dialog(I18n.t(:label_backlog_bucket_new))
end
@@ -417,17 +380,17 @@ module Pages
retry
end
def expect_story_in_sprint(story, sprint)
def expect_work_package_in_sprint(work_package, sprint)
within_sprint(sprint) do
expect(page)
.to have_selector(work_package_selector(story).to_s)
.to have_selector(work_package_selector(work_package).to_s)
end
end
def expect_story_not_in_sprint(story, sprint)
def expect_work_package_not_in_sprint(work_package, sprint)
within_sprint(sprint) do
expect(page)
.to have_no_selector(work_package_selector(story).to_s)
.to have_no_selector(work_package_selector(work_package).to_s)
end
end
@@ -437,7 +400,7 @@ module Pages
end
end
def expect_sprint_story_count(sprint, count)
def expect_sprint_work_package_count(sprint, count)
within(sprint_selector(sprint)) do
expect(page).to have_css(
".Counter",
@@ -465,25 +428,12 @@ module Pages
project_backlogs_backlog_path(project)
end
def within_story_menu(story, &)
within_story(story) do
button = find(:button, accessible_name: "Work package actions")
within(open_controlled_menu(button), &)
end
end
def within_details_view(story, &)
details_view = expect_details_view(story)
yield details_view
end
def expect_details_view(story)
details_view = Pages::PrimerizedSplitWorkPackage.new(story)
def expect_details_view(work_package)
details_view = Pages::PrimerizedSplitWorkPackage.new(work_package)
details_view.expect_tab :overview
details_view.expect_subject
expect(page).to have_current_path project_backlogs_backlog_details_path(story.project, story),
expect(page).to have_current_path project_backlogs_backlog_details_path(work_package.project, work_package),
ignore_query: true
wait_for_network_idle
@@ -529,10 +479,6 @@ module Pages
dismiss_menu(sprint)
end
def within_work_package_row(work_package, &)
within(work_package_selector(work_package), &)
end
def click_start_sprint_button(sprint)
within_sprint(sprint) do
click_on("Start")
@@ -580,8 +526,8 @@ module Pages
private
def within_story(story, &)
within(story_selector(story), &)
def within_work_package(work_package, &)
within(work_package_selector(work_package), &)
end
def within_sprint(sprint, &)
@@ -629,10 +575,6 @@ module Pages
.map { |section| section.first(:heading, level: 4).text }
end
def story_selector(story)
"#story_#{story.id}"
end
def work_package_selector(work_package)
test_selector("work-package-#{work_package.id}")
end