From daf20386935629f30ca7a411788d53e76e83106c Mon Sep 17 00:00:00 2001 From: Manny Dinssa <44172848+Dinssa@users.noreply.github.com> Date: Fri, 4 Apr 2025 08:59:50 +0100 Subject: [PATCH] Update nationality_all to use GlobalConstants for answer options and adjust displayed options --- app/models/form/lettings/questions/nationality_all.rb | 6 +++--- app/models/form/sales/questions/nationality_all.rb | 6 +++--- spec/models/form/lettings/questions/nationality_all_spec.rb | 6 +++++- spec/models/form/sales/questions/nationality_all_spec.rb | 6 +++++- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/app/models/form/lettings/questions/nationality_all.rb b/app/models/form/lettings/questions/nationality_all.rb index d62765dde..a4bb750a1 100644 --- a/app/models/form/lettings/questions/nationality_all.rb +++ b/app/models/form/lettings/questions/nationality_all.rb @@ -5,7 +5,7 @@ class Form::Lettings::Questions::NationalityAll < ::Form::Question @copy_key = "lettings.household_characteristics.nationality_all.nationality_all" @type = "select" @check_answers_card_number = 1 - @answer_options = answer_options + @answer_options = GlobalConstants::COUNTRIES_ANSWER_OPTIONS @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end @@ -13,8 +13,8 @@ class Form::Lettings::Questions::NationalityAll < ::Form::Question answer_options[log.nationality_all.to_s]["name"] end - def answer_options - GlobalConstants::COUNTRIES_ANSWER_OPTIONS.except("826") + def displayed_answer_options(_log, _current_user = nil) + @answer_options.reject { |key, _| key == "826" } end QUESTION_NUMBER_FROM_YEAR = { 2023 => 36, 2024 => 35 }.freeze diff --git a/app/models/form/sales/questions/nationality_all.rb b/app/models/form/sales/questions/nationality_all.rb index b9214e2ab..5610e0264 100644 --- a/app/models/form/sales/questions/nationality_all.rb +++ b/app/models/form/sales/questions/nationality_all.rb @@ -2,7 +2,7 @@ class Form::Sales::Questions::NationalityAll < ::Form::Question def initialize(id, hsh, page, buyer_index) super(id, hsh, page) @type = "select" - @answer_options = answer_options + @answer_options = GlobalConstants::COUNTRIES_ANSWER_OPTIONS @check_answers_card_number = buyer_index @buyer_index = buyer_index @question_number = QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX.fetch(form.start_date.year, QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX.max_by { |k, _v| k }.last)[buyer_index] @@ -12,8 +12,8 @@ class Form::Sales::Questions::NationalityAll < ::Form::Question answer_options[log.send(id).to_s]["name"] end - def answer_options - GlobalConstants::COUNTRIES_ANSWER_OPTIONS.except("826") + def displayed_answer_options(_log, _current_user = nil) + @answer_options.reject { |key, _| key == "826" } end QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX = { diff --git a/spec/models/form/lettings/questions/nationality_all_spec.rb b/spec/models/form/lettings/questions/nationality_all_spec.rb index 61e47eabc..e041f60a0 100644 --- a/spec/models/form/lettings/questions/nationality_all_spec.rb +++ b/spec/models/form/lettings/questions/nationality_all_spec.rb @@ -18,6 +18,10 @@ RSpec.describe Form::Lettings::Questions::NationalityAll, type: :model do end it "has the correct answer_options" do - expect(question.answer_options.count).to eq(202) + expect(question.answer_options.count).to eq(203) + end + + it "has the correct displayed_answer_options" do + expect(question.displayed_answer_options(nil, nil).count).to eq(202) end end diff --git a/spec/models/form/sales/questions/nationality_all_spec.rb b/spec/models/form/sales/questions/nationality_all_spec.rb index c62fb8565..4ed01cc70 100644 --- a/spec/models/form/sales/questions/nationality_all_spec.rb +++ b/spec/models/form/sales/questions/nationality_all_spec.rb @@ -20,7 +20,11 @@ RSpec.describe Form::Sales::Questions::NationalityAll, type: :model do end it "has the correct answer_options" do - expect(question.answer_options.count).to eq(202) + expect(question.answer_options.count).to eq(203) + end + + it "has the correct displayed_answer_options" do + expect(question.displayed_answer_options(nil, nil).count).to eq(202) end it "has correct conditional for" do