diff --git a/app/models/budget.rb b/app/models/budget.rb index 1eb59f101..327374c9a 100644 --- a/app/models/budget.rb +++ b/app/models/budget.rb @@ -199,9 +199,10 @@ class Budget < ApplicationRecord def investments_filters [ "not_unfeasible", + "feasible", "unfeasible", - ("unselected" if publishing_prices_or_later?), ("selected" if publishing_prices_or_later?), + ("unselected" if publishing_prices_or_later?), ("winners" if finished?) ].compact end diff --git a/config/locales/en/budgets.yml b/config/locales/en/budgets.yml index e2c8e65fd..c438b581d 100644 --- a/config/locales/en/budgets.yml +++ b/config/locales/en/budgets.yml @@ -121,7 +121,8 @@ en: not_logged_in: "To create a new budget investment you must %{sign_in} or %{sign_up}." filter: "Filtering projects by" filters: - not_unfeasible: "Not unfeasible" + feasible: "Feasible" + not_unfeasible: "Feasible or with undecided feasibility" selected: "Selected" unfeasible: "Unfeasible" unselected: "Unselected" diff --git a/config/locales/es/budgets.yml b/config/locales/es/budgets.yml index 3f232f6f2..51513a371 100644 --- a/config/locales/es/budgets.yml +++ b/config/locales/es/budgets.yml @@ -121,7 +121,8 @@ es: not_logged_in: "Para crear un nuevo proyecto de gasto debes %{sign_in} o %{sign_up}." filter: "Filtrando proyectos" filters: - not_unfeasible: "No inviables" + feasible: "Viables" + not_unfeasible: "Viables o con viabilidad por decidir" selected: "Seleccionados" unfeasible: "Inviables" unselected: "No seleccionados" diff --git a/spec/models/budget_spec.rb b/spec/models/budget_spec.rb index 6d16ddc56..1848b0c5a 100644 --- a/spec/models/budget_spec.rb +++ b/spec/models/budget_spec.rb @@ -290,7 +290,7 @@ describe Budget do %w[informing accepting reviewing selecting valuating].each do |phase| budget.phase = phase - expect(budget.investments_filters).to eq(%w[not_unfeasible unfeasible]) + expect(budget.investments_filters).to eq(%w[not_unfeasible feasible unfeasible]) end end @@ -298,14 +298,14 @@ describe Budget do %w[publishing_prices balloting reviewing_ballots].each do |phase| budget.phase = phase - expect(budget.investments_filters).to eq(%w[not_unfeasible unfeasible unselected selected]) + expect(budget.investments_filters).to eq(%w[not_unfeasible feasible unfeasible selected unselected]) end end it "returns all filters after the budget has finished" do budget.phase = "finished" - expect(budget.investments_filters).to eq(%w[not_unfeasible unfeasible unselected selected winners]) + expect(budget.investments_filters).to eq(%w[not_unfeasible feasible unfeasible selected unselected winners]) end end diff --git a/spec/system/budgets/investments_spec.rb b/spec/system/budgets/investments_spec.rb index ae2f3263d..e3639aa57 100644 --- a/spec/system/budgets/investments_spec.rb +++ b/spec/system/budgets/investments_spec.rb @@ -131,6 +131,7 @@ describe "Budget Investments" do scenario "Index filter by status" do budget.update!(phase: "finished") + create(:budget_investment, heading: heading, title: "Unclassified investment") create(:budget_investment, :feasible, heading: heading, title: "Feasible investment") create(:budget_investment, :unfeasible, heading: heading, title: "Unfeasible investment") create(:budget_investment, :unselected, heading: heading, title: "Unselected investment") @@ -141,34 +142,41 @@ describe "Budget Investments" do expect(page).to have_content "FILTERING PROJECTS BY" - click_link "Unfeasible" + click_link "Feasible" expect(page).to have_css ".budget-investment", count: 1 + expect(page).to have_content "Feasible investment" + + click_link "Unfeasible" + expect(page).to have_content "Unfeasible investment" + expect(page).to have_css ".budget-investment", count: 1 click_link "Unselected" - expect(page).to have_css ".budget-investment", count: 2 + expect(page).to have_css ".budget-investment", count: 3 expect(page).to have_content "Unselected investment" + expect(page).to have_content "Unclassified investment" expect(page).to have_content "Feasible investment" click_link "Selected" + expect(page).to have_css ".budget-investment", count: 2 expect(page).to have_content "Selected investment" expect(page).to have_content "Winner investment" - expect(page).to have_css ".budget-investment", count: 2 click_link "Winners" expect(page).to have_css ".budget-investment", count: 1 expect(page).to have_content "Winner investment" - click_link "Not unfeasible" + click_link "Feasible or with undecided feasibility" - expect(page).to have_css ".budget-investment", count: 4 + expect(page).to have_css ".budget-investment", count: 5 expect(page).to have_content "Selected investment" expect(page).to have_content "Unselected investment" expect(page).to have_content "Feasible investment" + expect(page).to have_content "Unclassified investment" expect(page).to have_content "Winner investment" end