From 86366da28cb94bc9bbd3da62edd505aa39e5bbf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20Mart=C3=ADn?= Date: Sun, 29 Sep 2019 15:41:17 +0200 Subject: [PATCH] Declare local variables outside a block We couldn't declare them inside the block because they would be considered local variables and its value would be lost when the block was finished. So we were using instance variables instead. However, with instance variables we don't get any warnings when we misspell their names. We can avoid them by declaring the local variables before the block starts. --- spec/features/budgets/investments_spec.rb | 21 +++++++++++++-------- spec/features/legislation/proposals_spec.rb | 13 ++++++++----- 2 files changed, 21 insertions(+), 13 deletions(-) diff --git a/spec/features/budgets/investments_spec.rb b/spec/features/budgets/investments_spec.rb index b327d02c0..9eb6bcadb 100644 --- a/spec/features/budgets/investments_spec.rb +++ b/spec/features/budgets/investments_spec.rb @@ -744,18 +744,20 @@ describe "Budget Investments" do scenario "Each user has a different and consistent random budget investment order" do (per_page * 1.3).to_i.times { create(:budget_investment, heading: heading) } + first_user_investments_order = nil + second_user_investments_order = nil in_browser(:one) do visit budget_investments_path(budget, heading: heading) - @first_user_investments_order = investments_order + first_user_investments_order = investments_order end in_browser(:two) do visit budget_investments_path(budget, heading: heading) - @second_user_investments_order = investments_order + second_user_investments_order = investments_order end - expect(@first_user_investments_order).not_to eq(@second_user_investments_order) + expect(first_user_investments_order).not_to eq(second_user_investments_order) in_browser(:one) do click_link "Next" @@ -764,7 +766,7 @@ describe "Budget Investments" do click_link "Previous" expect(page).to have_content "You're on page 1" - expect(investments_order).to eq(@first_user_investments_order) + expect(investments_order).to eq(first_user_investments_order) end in_browser(:two) do @@ -774,24 +776,27 @@ describe "Budget Investments" do click_link "Previous" expect(page).to have_content "You're on page 1" - expect(investments_order).to eq(@second_user_investments_order) + expect(investments_order).to eq(second_user_investments_order) end end scenario "Each user has a equal and consistent budget investment order when the random_seed is equal" do (per_page * 1.3).to_i.times { create(:budget_investment, heading: heading) } + first_user_investments_order = nil + second_user_investments_order = nil + in_browser(:one) do visit budget_investments_path(budget, heading: heading, random_seed: "1") - @first_user_investments_order = investments_order + first_user_investments_order = investments_order end in_browser(:two) do visit budget_investments_path(budget, heading: heading, random_seed: "1") - @second_user_investments_order = investments_order + second_user_investments_order = investments_order end - expect(@first_user_investments_order).to eq(@second_user_investments_order) + expect(first_user_investments_order).to eq(second_user_investments_order) end scenario "Set votes for investments randomized with a seed" do diff --git a/spec/features/legislation/proposals_spec.rb b/spec/features/legislation/proposals_spec.rb index 6e71d8164..f77ea685c 100644 --- a/spec/features/legislation/proposals_spec.rb +++ b/spec/features/legislation/proposals_spec.rb @@ -37,28 +37,31 @@ describe "Legislation Proposals" do let(:per_page) { 12 } scenario "Each user has a different and consistent random proposals order", :js do + first_user_proposals_order = nil + second_user_proposals_order = nil + in_browser(:one) do login_as user visit legislation_process_proposals_path(process) - @first_user_proposals_order = legislation_proposals_order + first_user_proposals_order = legislation_proposals_order end in_browser(:two) do login_as user2 visit legislation_process_proposals_path(process) - @second_user_proposals_order = legislation_proposals_order + second_user_proposals_order = legislation_proposals_order end - expect(@first_user_proposals_order).not_to eq(@second_user_proposals_order) + expect(first_user_proposals_order).not_to eq(second_user_proposals_order) in_browser(:one) do visit legislation_process_proposals_path(process) - expect(legislation_proposals_order).to eq(@first_user_proposals_order) + expect(legislation_proposals_order).to eq(first_user_proposals_order) end in_browser(:two) do visit legislation_process_proposals_path(process) - expect(legislation_proposals_order).to eq(@second_user_proposals_order) + expect(legislation_proposals_order).to eq(second_user_proposals_order) end end end