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.
38 lines
1.3 KiB
Ruby
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
|