spec/system/admin/poll/officer_assignments_spec.rb
require "rails_helper"
describe "Officer Assignments", :admin do
scenario "Index" do
poll = create(:poll)
create(:poll_officer, name: "Bubbles", polls: [poll])
create(:poll_officer, name: "Blossom", polls: [poll])
create(:poll_officer, name: "Buttercup")
visit admin_poll_path(poll)
click_link "Officers (2)"
within("#officer_assignments") do
expect(page).to have_content "Bubbles"
expect(page).to have_content "Blossom"
expect(page).not_to have_content "Buttercup"
end
end
scenario "Search" do
poll = create(:poll)
create(:poll_officer, name: "John Snow", polls: [poll])
create(:poll_officer, name: "John Silver", polls: [poll])
create(:poll_officer, name: "John Edwards")
visit admin_poll_path(poll)
click_link "Officers (2)"
fill_in "search-officers", with: "John"
click_button "Search"
within("#search-officers-results") do
expect(page).to have_content "John Snow"
expect(page).to have_content "John Silver"
expect(page).not_to have_content "John Edwards"
end
end
end