Browse Source

only show buyer 2 checks if it's a jjoint purchase

pull/1240/head
Kat 3 years ago
parent
commit
1bfb0b5d92
  1. 28
      app/models/form/sales/pages/mortgage_value_check.rb
  2. 8
      app/models/form/sales/subsections/income_benefits_and_savings.rb
  3. 16
      spec/models/form/sales/pages/mortgage_value_check_spec.rb

28
app/models/form/sales/pages/mortgage_value_check.rb

@ -1,12 +1,9 @@
class Form::Sales::Pages::MortgageValueCheck < ::Form::Page
def initialize(id, hsh, subsection)
super
@depends_on = [
{
"mortgage_over_soft_max?" => true,
},
]
def initialize(id, hsh, subsection, person_index = nil)
super(id, hsh, subsection)
@depends_on = depends_on
@informative_text = {}
@person_index = person_index
end
def questions
@ -14,4 +11,21 @@ class Form::Sales::Pages::MortgageValueCheck < ::Form::Page
Form::Sales::Questions::MortgageValueCheck.new(nil, nil, self),
]
end
def depends_on
if @person_index == 2
[
{
"mortgage_over_soft_max?" => true,
"jointpur" => 1,
},
]
else
[
{
"mortgage_over_soft_max?" => true,
},
]
end
end
end

8
app/models/form/sales/subsections/income_benefits_and_savings.rb

@ -10,13 +10,13 @@ class Form::Sales::Subsections::IncomeBenefitsAndSavings < ::Form::Subsection
@pages ||= [
Form::Sales::Pages::Buyer1Income.new(nil, nil, self),
Form::Sales::Pages::Buyer1IncomeValueCheck.new("buyer_1_income_value_check", nil, self),
Form::Sales::Pages::MortgageValueCheck.new("buyer_1_income_mortgage_value_check", nil, self),
Form::Sales::Pages::MortgageValueCheck.new("buyer_1_income_mortgage_value_check", nil, self, 1),
Form::Sales::Pages::Buyer1Mortgage.new(nil, nil, self),
Form::Sales::Pages::MortgageValueCheck.new("buyer_1_mortgage_value_check", nil, self),
Form::Sales::Pages::MortgageValueCheck.new("buyer_1_mortgage_value_check", nil, self, 1),
Form::Sales::Pages::Buyer2Income.new(nil, nil, self),
Form::Sales::Pages::MortgageValueCheck.new("buyer_2_income_mortgage_value_check", nil, self),
Form::Sales::Pages::MortgageValueCheck.new("buyer_2_income_mortgage_value_check", nil, self, 2),
Form::Sales::Pages::Buyer2Mortgage.new(nil, nil, self),
Form::Sales::Pages::MortgageValueCheck.new("buyer_2_mortgage_value_check", nil, self),
Form::Sales::Pages::MortgageValueCheck.new("buyer_2_mortgage_value_check", nil, self, 2),
Form::Sales::Pages::HousingBenefits.new(nil, nil, self),
Form::Sales::Pages::Savings.new(nil, nil, self),
Form::Sales::Pages::SavingsValueCheck.new("savings_value_check", nil, self),

16
spec/models/form/sales/pages/mortgage_value_check_spec.rb

@ -1,10 +1,11 @@
require "rails_helper"
RSpec.describe Form::Sales::Pages::MortgageValueCheck, type: :model do
subject(:page) { described_class.new(page_id, page_definition, subsection) }
subject(:page) { described_class.new(page_id, page_definition, subsection, index) }
let(:page_id) { "buyer_1_income_mortgage_value_check" }
let(:page_definition) { nil }
let(:index) { 1 }
let(:subsection) { instance_double(Form::Subsection) }
it "has correct subsection" do
@ -34,4 +35,17 @@ RSpec.describe Form::Sales::Pages::MortgageValueCheck, type: :model do
},
])
end
context "when checking buyer 2" do
let(:index) { 2 }
it "has correct depends_on" do
expect(page.depends_on).to eq([
{
"mortgage_over_soft_max?" => true,
"jointpur" => 1,
},
])
end
end
end

Loading…
Cancel
Save