diff --git a/app/constants/benefit_cap.rb b/app/constants/benefit_cap.rb new file mode 100644 index 000000000..58d9832f2 --- /dev/null +++ b/app/constants/benefit_cap.rb @@ -0,0 +1,14 @@ +module BenefitCap + @@benefitcap = { + "Yes - benefit cap" => 5, + "Yes - removal of the spare room subsidy" => 4, + "Yes - both the benefit cap and the removal of the spare room subsidy" => 6, + "No" => 2, + "Do not know" => 3, + "Prefer not to say" => 100, + } + + def self.benefitcap + @@benefitcap + end +end diff --git a/app/models/case_log.rb b/app/models/case_log.rb index 005096c65..9d014d8e8 100644 --- a/app/models/case_log.rb +++ b/app/models/case_log.rb @@ -42,6 +42,7 @@ class CaseLog < ApplicationRecord include Ecstat include PreviousTenancy include Homeless + include BenefitCap default_scope -> { kept } scope :not_completed, -> { where.not(status: "completed") } @@ -64,6 +65,7 @@ class CaseLog < ApplicationRecord enum ecstat8: Ecstat.ecstat, _suffix: true enum prevten: PreviousTenancy.previous_tenancy, _suffix: true enum homeless: Homeless.homeless, _suffix: true + enum underoccupation_benefitcap: BenefitCap.benefitcap, _suffix: true AUTOGENERATED_FIELDS = %w[id status created_at updated_at discarded_at].freeze diff --git a/db/migrate/20211103090530_change_field_types.rb b/db/migrate/20211103090530_change_field_types.rb index f24b53613..1b9f9029b 100644 --- a/db/migrate/20211103090530_change_field_types.rb +++ b/db/migrate/20211103090530_change_field_types.rb @@ -13,6 +13,7 @@ class ChangeFieldTypes < ActiveRecord::Migration[6.1] t.change :ecstat8, "integer USING ecstat8::integer" t.change :prevten, "integer USING prevten::integer" t.change :homeless, "integer USING homeless::integer" + t.change :underoccupation_benefitcap, "integer USING underoccupation_benefitcap::integer" end end @@ -30,6 +31,7 @@ class ChangeFieldTypes < ActiveRecord::Migration[6.1] t.change :ecstat8, :string t.change :prevten, :string t.change :homeless, :string + t.change :underoccupation_benefitcap, :string end end end diff --git a/spec/models/case_log_spec.rb b/spec/models/case_log_spec.rb index 20a3f3aa9..792667816 100644 --- a/spec/models/case_log_spec.rb +++ b/spec/models/case_log_spec.rb @@ -50,7 +50,7 @@ RSpec.describe Form, type: :model do it "if not given reasonable preference a reason should not be selected" do expect { CaseLog.create!( - homeless: "Yes", + homeless: "Yes - other homelessness", reasonpref: "No", rp_homeless: true, )