Browse Source

Merge branch 'main' into CLDC-4151-new-referral-questions

# Conflicts:
#	spec/fixtures/files/lettings_log_csv_export_labels_26.csv
#	spec/fixtures/files/lettings_log_csv_export_non_support_labels_26.csv
pull/3150/head
samyou-softwire 4 weeks ago
parent
commit
e0b4d5c34f
  1. 8
      app/models/form/lettings/questions/lead_tenant_sex_registered_at_birth.rb
  2. 8
      app/models/form/lettings/questions/person_sex_registered_at_birth.rb
  3. 2
      app/models/form/sales/questions/deposit_value_check.rb
  4. 1
      app/models/form/sales/questions/housing_benefits.rb
  5. 8
      app/models/form/sales/questions/person_sex_registered_at_birth.rb
  6. 2
      app/models/form/sales/questions/savings_value_check.rb
  7. 8
      app/models/form/sales/questions/sex_registered_at_birth1.rb
  8. 8
      app/models/form/sales/questions/sex_registered_at_birth2.rb
  9. 2
      spec/fixtures/files/lettings_log_csv_export_labels_26.csv
  10. 2
      spec/fixtures/files/lettings_log_csv_export_non_support_labels_26.csv
  11. 2
      spec/models/form/sales/pages/deposit_value_check_spec.rb
  12. 2
      spec/models/form/sales/pages/housing_benefits_spec.rb
  13. 2
      spec/models/form/sales/pages/savings_value_check_spec.rb
  14. 28
      spec/models/form/sales/questions/deposit_value_check_spec.rb
  15. 31
      spec/models/form/sales/questions/housing_benefits_spec.rb
  16. 28
      spec/models/form/sales/questions/savings_value_check_spec.rb

8
app/models/form/lettings/questions/lead_tenant_sex_registered_at_birth.rb

@ -16,4 +16,12 @@ class Form::Lettings::Questions::LeadTenantSexRegisteredAtBirth < ::Form::Questi
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2026 => 31 }.freeze
def label_from_value(value, _log = nil, _user = nil)
return unless value
return "Prefers not to say" if value == "R"
super
end
end

8
app/models/form/lettings/questions/person_sex_registered_at_birth.rb

@ -20,4 +20,12 @@ class Form::Lettings::Questions::PersonSexRegisteredAtBirth < ::Form::Question
base_question_number + (5 * @person_index)
end
def label_from_value(value, _log = nil, _user = nil)
return unless value
return "Prefers not to say" if value == "R"
super
end
end

2
app/models/form/sales/questions/deposit_value_check.rb

@ -18,6 +18,6 @@ class Form::Sales::Questions::DepositValueCheck < ::Form::Question
},
],
}
@check_answers_card_number = 0
@check_answers_card_number = 0 unless form.start_year_2026_or_later?
end
end

1
app/models/form/sales/questions/housing_benefits.rb

@ -5,6 +5,7 @@ class Form::Sales::Questions::HousingBenefits < ::Form::Question
@copy_key = "sales.income_benefits_and_savings.housing_benefits.#{joint_purchase ? 'joint_purchase' : 'not_joint_purchase'}"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_title = "All buyers" if form.start_year_2026_or_later?
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end

8
app/models/form/sales/questions/person_sex_registered_at_birth.rb

@ -16,4 +16,12 @@ class Form::Sales::Questions::PersonSexRegisteredAtBirth < ::Form::Question
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2026 => 0 }.freeze
def label_from_value(value, _log = nil, _user = nil)
return unless value
return "Prefers not to say" if value == "R"
super
end
end

2
app/models/form/sales/questions/savings_value_check.rb

@ -18,6 +18,6 @@ class Form::Sales::Questions::SavingsValueCheck < ::Form::Question
},
],
}
@check_answers_card_number = 0
@check_answers_card_number = 0 unless form.start_year_2026_or_later?
end
end

8
app/models/form/sales/questions/sex_registered_at_birth1.rb

@ -16,4 +16,12 @@ class Form::Sales::Questions::SexRegisteredAtBirth1 < ::Form::Question
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2026 => 0 }.freeze
def label_from_value(value, _log = nil, _user = nil)
return unless value
return "Prefers not to say" if value == "R"
super
end
end

8
app/models/form/sales/questions/sex_registered_at_birth2.rb

@ -17,4 +17,12 @@ class Form::Sales::Questions::SexRegisteredAtBirth2 < ::Form::Question
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2026 => 0 }.freeze
def label_from_value(value, _log = nil, _user = nil)
return unless value
return "Prefers not to say" if value == "R"
super
end
end

2
spec/fixtures/files/lettings_log_csv_export_labels_26.csv vendored

File diff suppressed because one or more lines are too long

2
spec/fixtures/files/lettings_log_csv_export_non_support_labels_26.csv vendored

File diff suppressed because one or more lines are too long

2
spec/models/form/sales/pages/deposit_value_check_spec.rb

@ -5,7 +5,7 @@ RSpec.describe Form::Sales::Pages::DepositValueCheck, type: :model do
let(:page_id) { "deposit_value_check" }
let(:page_definition) { nil }
let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) }
let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_2026_or_later?: false) }
let(:subsection) { instance_double(Form::Subsection, form:) }
it "has correct subsection" do

2
spec/models/form/sales/pages/housing_benefits_spec.rb

@ -5,7 +5,7 @@ RSpec.describe Form::Sales::Pages::HousingBenefits, type: :model do
let(:page_id) { "provided_id" }
let(:page_definition) { nil }
let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1))) }
let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1), start_year_2026_or_later?: false)) }
let(:joint_purchase) { false }
it "has correct subsection" do

2
spec/models/form/sales/pages/savings_value_check_spec.rb

@ -5,7 +5,7 @@ RSpec.describe Form::Sales::Pages::SavingsValueCheck, type: :model do
let(:page_id) { "savings_value_check" }
let(:page_definition) { nil }
let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) }
let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_2026_or_later?: false) }
let(:subsection) { instance_double(Form::Subsection, form:) }
it "has correct subsection" do

28
spec/models/form/sales/questions/deposit_value_check_spec.rb

@ -6,6 +6,14 @@ RSpec.describe Form::Sales::Questions::DepositValueCheck, type: :model do
let(:question_id) { nil }
let(:question_definition) { nil }
let(:page) { instance_double(Form::Page) }
let(:subsection) { instance_double(Form::Subsection) }
let(:form) { instance_double(Form) }
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(true)
allow(page).to receive(:subsection).and_return(subsection)
allow(subsection).to receive(:form).and_return(form)
end
it "has correct page" do
expect(question.page).to eq(page)
@ -23,8 +31,24 @@ RSpec.describe Form::Sales::Questions::DepositValueCheck, type: :model do
expect(question.derived?(nil)).to be false
end
it "has a correct check_answers_card_number" do
expect(question.check_answers_card_number).to eq(0)
context "when in 2025", { year: 25 } do
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(false)
end
it "has check_answers_card_number set to 0" do
expect(question.check_answers_card_number).to eq(0)
end
end
context "when in 2026", { year: 26 } do
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(true)
end
it "does not have a check_answers_card_number" do
expect(question.check_answers_card_number).to be_nil
end
end
it "has the correct answer_options" do

31
spec/models/form/sales/questions/housing_benefits_spec.rb

@ -5,9 +5,18 @@ RSpec.describe Form::Sales::Questions::HousingBenefits, type: :model do
let(:question_id) { nil }
let(:question_definition) { nil }
let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1)))) }
let(:page) { instance_double(Form::Page) }
let(:subsection) { instance_double(Form::Subsection) }
let(:form) { instance_double(Form) }
let(:joint_purchase) { false }
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(true)
allow(form).to receive(:start_date).and_return(Time.zone.local(2023, 4, 1))
allow(page).to receive(:subsection).and_return(subsection)
allow(subsection).to receive(:form).and_return(form)
end
it "has correct page" do
expect(question.page).to eq(page)
end
@ -24,6 +33,26 @@ RSpec.describe Form::Sales::Questions::HousingBenefits, type: :model do
expect(question.derived?(nil)).to be false
end
context "when in 2025", { year: 25 } do
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(false)
end
it "does not have a check_answers_card_title" do
expect(question.check_answers_card_title).to be_nil
end
end
context "when in 2026", { year: 26 } do
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(true)
end
it "has check_answers_card_title set to 'All buyers'" do
expect(question.check_answers_card_title).to eq("All buyers")
end
end
it "has the correct answer_options" do
expect(question.answer_options).to eq({
"2" => { "value" => "Housing benefit" },

28
spec/models/form/sales/questions/savings_value_check_spec.rb

@ -6,6 +6,14 @@ RSpec.describe Form::Sales::Questions::SavingsValueCheck, type: :model do
let(:question_id) { nil }
let(:question_definition) { nil }
let(:page) { instance_double(Form::Page) }
let(:subsection) { instance_double(Form::Subsection) }
let(:form) { instance_double(Form) }
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(true)
allow(page).to receive(:subsection).and_return(subsection)
allow(subsection).to receive(:form).and_return(form)
end
it "has correct page" do
expect(question.page).to eq(page)
@ -23,8 +31,24 @@ RSpec.describe Form::Sales::Questions::SavingsValueCheck, type: :model do
expect(question.derived?(nil)).to be false
end
it "has a correct check_answers_card_number" do
expect(question.check_answers_card_number).to eq(0)
context "when in 2025", { year: 25 } do
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(false)
end
it "has check_answers_card_number set to 0" do
expect(question.check_answers_card_number).to eq(0)
end
end
context "when in 2026", { year: 26 } do
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(true)
end
it "does not have a check_answers_card_number" do
expect(question.check_answers_card_number).to be_nil
end
end
it "has the correct answer_options" do

Loading…
Cancel
Save