Files
nairobi/spec/system/budget_polls/officing_spec.rb
Javi Martín 533d2198ee Use refresh instead of visiting the current page
This way it's more obvious what's going on.

Note that, in this case, the expectations were **not** true before
visiting the page, so we aren't fixing a flaky test.
2025-03-26 16:27:08 +01:00

38 lines
1.3 KiB
Ruby

require "rails_helper"
describe "Budget Poll Officing" do
scenario "Show sidebar menus if officer has shifts assigned" do
booth = create(:poll_booth)
booth_assignment = create(:poll_booth_assignment, booth: booth)
officer = create(:poll_officer)
create(:poll_shift, officer: officer, booth: booth, date: Date.current, task: :vote_collection)
login_as officer.user
visit officing_root_path
expect(page).not_to have_content("You don't have officing shifts today")
expect(page).to have_content("Validate document")
expect(page).not_to have_content("Total recounts and results")
create(:poll_shift, officer: officer, booth: booth, date: Date.current, task: :recount_scrutiny)
create(:poll_officer_assignment, booth_assignment: booth_assignment, officer: officer)
refresh
expect(page).not_to have_content("You don't have officing shifts today")
expect(page).to have_content("Validate document")
expect(page).to have_content("Total recounts and results")
end
scenario "Do not show sidebar menus if officer has no shifts assigned" do
login_as(create(:poll_officer).user)
visit officing_root_path
expect(page).to have_content("You don't have officing shifts today")
expect(page).not_to have_content("Validate document")
expect(page).not_to have_content("Total recounts and results")
end
end