From 0c7681b2d69decb87e6fcd8a0d60e3d6d581d425 Mon Sep 17 00:00:00 2001 From: natdeanlewissoftwire Date: Wed, 5 Apr 2023 11:37:27 +0100 Subject: [PATCH] feat: add tests and refactor --- .../pages/buyer1_income_max_value_check.rb | 2 +- .../buyer1_income_max_value_check_spec.rb | 37 +++++++++++++++++++ ...c.rb => buyer1_income_value_check_spec.rb} | 2 +- .../income_benefits_and_savings_spec.rb | 2 + .../subsections/property_information_spec.rb | 2 + 5 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 spec/models/form/sales/pages/buyer1_income_max_value_check_spec.rb rename spec/models/form/sales/questions/{buyer1_income_min_value_check_spec.rb => buyer1_income_value_check_spec.rb} (94%) diff --git a/app/models/form/sales/pages/buyer1_income_max_value_check.rb b/app/models/form/sales/pages/buyer1_income_max_value_check.rb index 38f7a95aa..61f02707c 100644 --- a/app/models/form/sales/pages/buyer1_income_max_value_check.rb +++ b/app/models/form/sales/pages/buyer1_income_max_value_check.rb @@ -13,7 +13,7 @@ class Form::Sales::Pages::Buyer1IncomeMaxValueCheck < ::Form::Page "key" => "field_formatted_as_currency", "arguments_for_key" => "income1", "i18n_template" => "income", - } + }, ], } @informative_text = {} diff --git a/spec/models/form/sales/pages/buyer1_income_max_value_check_spec.rb b/spec/models/form/sales/pages/buyer1_income_max_value_check_spec.rb new file mode 100644 index 000000000..07f640773 --- /dev/null +++ b/spec/models/form/sales/pages/buyer1_income_max_value_check_spec.rb @@ -0,0 +1,37 @@ +require "rails_helper" + +RSpec.describe Form::Sales::Pages::Buyer1IncomeMaxValueCheck, type: :model do + subject(:page) { described_class.new(page_id, page_definition, subsection) } + + let(:page_id) { "prefix_buyer_1_income_max_value_check" } + let(:page_definition) { nil } + let(:subsection) { instance_double(Form::Subsection) } + + it "has correct subsection" do + expect(page.subsection).to eq(subsection) + end + + it "has correct questions" do + expect(page.questions.map(&:id)).to eq(%w[income1_value_check]) + end + + it "has the correct id" do + expect(page.id).to eq("prefix_buyer_1_income_max_value_check") + end + + it "has the correct header" do + expect(page.header).to be_nil + end + + it "has correct depends_on" do + expect(page.depends_on).to eq([ + { + "income1_over_soft_max?" => true, + }, + ]) + end + + it "is interruption screen page" do + expect(page.interruption_screen?).to eq(true) + end +end diff --git a/spec/models/form/sales/questions/buyer1_income_min_value_check_spec.rb b/spec/models/form/sales/questions/buyer1_income_value_check_spec.rb similarity index 94% rename from spec/models/form/sales/questions/buyer1_income_min_value_check_spec.rb rename to spec/models/form/sales/questions/buyer1_income_value_check_spec.rb index 446176f7c..89801a398 100644 --- a/spec/models/form/sales/questions/buyer1_income_min_value_check_spec.rb +++ b/spec/models/form/sales/questions/buyer1_income_value_check_spec.rb @@ -1,6 +1,6 @@ require "rails_helper" -RSpec.describe Form::Sales::Questions::Buyer1IncomeMinValueCheck, type: :model do +RSpec.describe Form::Sales::Questions::Buyer1IncomeValueCheck, type: :model do subject(:question) { described_class.new(question_id, question_definition, page) } let(:question_id) { nil } diff --git a/spec/models/form/sales/subsections/income_benefits_and_savings_spec.rb b/spec/models/form/sales/subsections/income_benefits_and_savings_spec.rb index ee5700994..4fa5aa6fe 100644 --- a/spec/models/form/sales/subsections/income_benefits_and_savings_spec.rb +++ b/spec/models/form/sales/subsections/income_benefits_and_savings_spec.rb @@ -22,6 +22,7 @@ RSpec.describe Form::Sales::Subsections::IncomeBenefitsAndSavings, type: :model %w[ buyer_1_income buyer_1_income_min_value_check + buyer_1_income_max_value_check buyer_1_income_mortgage_value_check buyer_1_mortgage buyer_1_mortgage_value_check @@ -50,6 +51,7 @@ RSpec.describe Form::Sales::Subsections::IncomeBenefitsAndSavings, type: :model %w[ buyer_1_income buyer_1_income_min_value_check + buyer_1_income_max_value_check buyer_1_income_mortgage_value_check buyer_1_mortgage buyer_1_mortgage_value_check diff --git a/spec/models/form/sales/subsections/property_information_spec.rb b/spec/models/form/sales/subsections/property_information_spec.rb index 1c049ea97..4c9e5b475 100644 --- a/spec/models/form/sales/subsections/property_information_spec.rb +++ b/spec/models/form/sales/subsections/property_information_spec.rb @@ -27,6 +27,7 @@ RSpec.describe Form::Sales::Subsections::PropertyInformation, type: :model do property_building_type property_postcode property_local_authority + local_authority_buyer_1_income_max_value_check about_price_la_value_check property_wheelchair_accessible ], @@ -45,6 +46,7 @@ RSpec.describe Form::Sales::Subsections::PropertyInformation, type: :model do uprn_confirmation address property_local_authority + local_authority_buyer_1_income_max_value_check property_number_of_bedrooms about_price_bedrooms_value_check property_unit_type