Browse Source

Use dynamic ids for pages

pull/1085/head
Kat 4 years ago
parent
commit
cb2d17f473
  1. 2
      app/models/form/page.rb
  2. 4
      app/models/form/sales/pages/mortgage_value_check.rb
  3. 4
      app/models/form/sales/subsections/income_benefits_and_savings.rb
  4. 4
      spec/models/form/sales/pages/mortgage_value_check_spec.rb
  5. 4
      spec/models/form/sales/subsections/income_benefits_and_savings_spec.rb
  6. 4
      spec/models/form_handler_spec.rb

2
app/models/form/page.rb

@ -2,7 +2,7 @@ class Form::Page
attr_accessor :id, :header, :header_partial, :description, :questions, :depends_on, :title_text,
:informative_text, :subsection, :hide_subsection_label, :next_unresolved_page_id
def initialize(id, hsh, subsection)
def initialize(id, hsh, subsection, _dynamic_values = {})
@id = id
@subsection = subsection
if hsh

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

@ -1,7 +1,7 @@
class Form::Sales::Pages::MortgageValueCheck < ::Form::Page
def initialize(id, hsh, subsection)
def initialize(id, hsh, subsection, dynamic_values)
super
@id = "mortgage_value_check"
@id = "#{dynamic_values.present? ? dynamic_values[:id_prefix] : ''}mortgage_value_check"
@header = ""
@description = ""
@subsection = subsection

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

@ -11,9 +11,11 @@ class Form::Sales::Subsections::IncomeBenefitsAndSavings < ::Form::Subsection
@pages ||= [
Form::Sales::Pages::Buyer1Income.new(nil, nil, self),
Form::Sales::Pages::Buyer1IncomeValueCheck.new(nil, nil, self),
Form::Sales::Pages::MortgageValueCheck.new(nil, nil, self, { id_prefix: "buyer_1_income_" }),
Form::Sales::Pages::Buyer1Mortgage.new(nil, nil, self),
Form::Sales::Pages::MortgageValueCheck.new(nil, nil, self, { id_prefix: "buyer_1_" }),
Form::Sales::Pages::Buyer2Income.new(nil, nil, self),
Form::Sales::Pages::MortgageValueCheck.new(nil, nil, self),
Form::Sales::Pages::MortgageValueCheck.new(nil, nil, self, { id_prefix: "buyer_2_income_" }),
Form::Sales::Pages::Savings.new(nil, nil, self),
Form::Sales::Pages::PreviousOwnership.new(nil, nil, self),
]

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

@ -1,7 +1,7 @@
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, { id_prefix: "buyer_1_income_" }) }
let(:page_id) { nil }
let(:page_definition) { nil }
@ -16,7 +16,7 @@ RSpec.describe Form::Sales::Pages::MortgageValueCheck, type: :model do
end
it "has the correct id" do
expect(page.id).to eq("mortgage_value_check")
expect(page.id).to eq("buyer_1_income_mortgage_value_check")
end
it "has the correct header" do

4
spec/models/form/sales/subsections/income_benefits_and_savings_spec.rb

@ -16,9 +16,11 @@ RSpec.describe Form::Sales::Subsections::IncomeBenefitsAndSavings, type: :model
%w[
buyer_1_income
buyer_1_income_value_check
buyer_1_income_mortgage_value_check
buyer_1_mortgage
buyer_1_mortgage_value_check
buyer_2_income
mortgage_value_check
buyer_2_income_mortgage_value_check
savings
previous_ownership
],

4
spec/models/form_handler_spec.rb

@ -52,14 +52,14 @@ RSpec.describe FormHandler do
it "is able to load a current sales form" do
form = form_handler.get_form("current_sales")
expect(form).to be_a(Form)
expect(form.pages.count).to eq(53)
expect(form.pages.count).to eq(55)
expect(form.name).to eq("2022_2023_sales")
end
it "is able to load a previous sales form" do
form = form_handler.get_form("previous_sales")
expect(form).to be_a(Form)
expect(form.pages.count).to eq(53)
expect(form.pages.count).to eq(55)
expect(form.name).to eq("2021_2022_sales")
end
end

Loading…
Cancel
Save