From b5d25134d4ad3a2c9d0b1a61315014591ff52f62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20Mart=C3=ADn?= Date: Fri, 6 Sep 2019 20:27:30 +0200 Subject: [PATCH] Create less headings in budget investment tests We don't need to create a heading every time we create an investment; we can use an existing one by default. Some tests are now much faster and don't fail on Travis due to reaching Capybara's timeout anymore. --- spec/factories/budgets.rb | 3 ++- spec/models/budget/stats_spec.rb | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/spec/factories/budgets.rb b/spec/factories/budgets.rb index d6141366d..cecefbc2e 100644 --- a/spec/factories/budgets.rb +++ b/spec/factories/budgets.rb @@ -83,7 +83,8 @@ FactoryBot.define do factory :budget_investment, class: "Budget::Investment" do sequence(:title) { |n| "Budget Investment #{n} title" } - heading { association :budget_heading, budget: budget } + heading { budget&.headings&.reload&.sample || association(:budget_heading, budget: budget) } + association :author, factory: :user description { "Spend money on this" } price { 10 } diff --git a/spec/models/budget/stats_spec.rb b/spec/models/budget/stats_spec.rb index b67d23ddf..f753ed7c6 100644 --- a/spec/models/budget/stats_spec.rb +++ b/spec/models/budget/stats_spec.rb @@ -87,7 +87,7 @@ describe Budget::Stats do it "doesn't count nil user ids" do create(:budget_ballot_line, investment: investment, - ballot: create(:budget_ballot, budget: budget, user: nil, physical: true) + ballot: create(:budget_ballot, budget: budget.reload, user: nil, physical: true) ) expect(stats.total_participants_vote_phase).to be 0