Files
nairobi/spec/system/budgets/stats_spec.rb
Javi Martín 9427f01442 Use system specs instead of feature specs
We get rid of database cleaner, and JavaScript tests are faster because
between tests we now rollback transactions instead of truncating the
database.
2020-04-24 15:43:54 +02:00

47 lines
1.2 KiB
Ruby

require "rails_helper"
describe "Stats" do
let(:budget) { create(:budget, :finished) }
let(:heading) { create(:budget_heading, budget: budget, price: 1000) }
context "Load" do
before { budget.update(slug: "budget_slug") }
scenario "finds budget by slug" do
visit budget_stats_path("budget_slug")
expect(page).to have_content budget.name
end
scenario "raises an error if budget slug is not found" do
expect do
visit budget_stats_path("wrong_budget")
end.to raise_error ActiveRecord::RecordNotFound
end
scenario "raises an error if budget id is not found" do
expect do
visit budget_stats_path(0)
end.to raise_error ActiveRecord::RecordNotFound
end
end
describe "Show" do
describe "advanced stats" do
scenario "advanced stats enabled" do
budget.update!(advanced_stats_enabled: true)
visit budget_stats_path(budget)
expect(page).to have_content "Advanced statistics"
end
scenario "advanced stats disabled" do
visit budget_stats_path(budget)
expect(page).not_to have_content "Advanced statistics"
end
end
end
end