33 lines
1.1 KiB
Ruby
33 lines
1.1 KiB
Ruby
require "rails_helper"
|
|
|
|
describe Admin::Budgets::TableActionsComponent, controller: Admin::BaseController do
|
|
let(:budget) { create(:budget) }
|
|
let(:component) { Admin::Budgets::TableActionsComponent.new(budget) }
|
|
|
|
it "renders links to edit and delete budget, manage investments and edit groups and manage ballots" do
|
|
render_inline component
|
|
|
|
expect(page).to have_css "a", count: 6
|
|
expect(page).to have_link "Investment projects", href: /investments/
|
|
expect(page).to have_link "Heading groups", href: /groups/
|
|
expect(page).to have_link "Edit", href: /edit/
|
|
expect(page).to have_link "Ballots"
|
|
expect(page).to have_link "Preview", href: /budgets/
|
|
expect(page).to have_link "Delete", href: /budgets/
|
|
end
|
|
|
|
it "renders link to create new poll for budgets without polls" do
|
|
render_inline component
|
|
|
|
expect(page).to have_css "a[href*='polls'][data-method='post']", text: "Ballots"
|
|
end
|
|
|
|
it "renders link to manage ballots for budgets with polls" do
|
|
budget.poll = create(:poll, budget: budget)
|
|
|
|
render_inline component
|
|
|
|
expect(page).to have_link "Ballots", href: /booth_assignments/
|
|
end
|
|
end
|