Browse Source

refactor: save lines

pull/2192/head
natdeanlewissoftwire 2 years ago
parent
commit
85e4b98c99
  1. 272
      app/models/form/lettings/questions/reason.rb
  2. 48
      app/models/form/lettings/questions/reason_renewal.rb
  3. 50
      spec/models/form/lettings/questions/reason_renewal_spec.rb
  4. 272
      spec/models/form/lettings/questions/reason_spec.rb

272
app/models/form/lettings/questions/reason.rb

@ -18,213 +18,77 @@ class Form::Lettings::Questions::Reason < ::Form::Question
def answer_options
if form.start_year_after_2024?
{
"50" => {
"value" => "End of social housing tenancy - no fault",
},
"51" => {
"value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)",
},
"52" => {
"value" => "End of social housing tenancy - evicted due to rent arrears",
},
"53" => {
"value" => "End of social housing tenancy - evicted for any other reason",
},
"1" => {
"value" => "Permanently decanted from another property owned by this landlord",
},
"2" => {
"value" => "Left home country as a refugee",
},
"45" => {
"value" => "Discharged from prison",
},
"46" => {
"value" => "Discharged from long-stay hospital or similar institution",
},
"4" => {
"value" => "Loss of tied accommodation",
},
"9" => {
"value" => "Asked to leave by family or friends",
},
"8" => {
"value" => "Relationship breakdown (non-violent) with partner",
},
"44" => {
"value" => "Death of household member in last settled accommodation",
},
"16" => {
"value" => "To move nearer to family, friends or school",
},
"17" => {
"value" => "To move nearer to work",
},
"48" => {
"value" => "Domestic abuse - previously joint tenancy with partner",
},
"49" => {
"value" => "Domestic abuse - other",
},
"10" => {
"value" => "Racial harassment",
},
"31" => {
"value" => "Hate crime",
},
"11" => {
"value" => "Other problems with neighbours",
},
"34" => {
"value" => "Repossession",
},
"54" => {
"value" => "Could no longer afford rent or mortgage",
},
"12" => {
"value" => "Property unsuitable because of overcrowding",
},
"13" => {
"value" => "Property unsuitable because of ill health or disability",
},
"14" => {
"value" => "Property unsuitable because of poor condition",
},
"29" => {
"value" => "Under occupation (offered incentive to downsize)",
},
"30" => {
"value" => "Under occupation (no incentive)",
},
"18" => {
"value" => "To move to accommodation with support",
},
"19" => {
"value" => "To move to independent accommodation",
},
"20" => {
"value" => "Other",
},
"28" => {
"value" => "Don’t know",
},
"divider" => {
"value" => true,
},
"47" => {
"value" => "Tenant prefers not to say",
},
"50" => { "value" => "End of social housing tenancy - no fault" },
"51" => { "value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)" },
"52" => { "value" => "End of social housing tenancy - evicted due to rent arrears" },
"53" => { "value" => "End of social housing tenancy - evicted for any other reason" },
"1" => { "value" => "Permanently decanted from another property owned by this landlord" },
"2" => { "value" => "Left home country as a refugee" },
"45" => { "value" => "Discharged from prison" },
"46" => { "value" => "Discharged from long-stay hospital or similar institution" },
"4" => { "value" => "Loss of tied accommodation" },
"9" => { "value" => "Asked to leave by family or friends" },
"8" => { "value" => "Relationship breakdown (non-violent) with partner" },
"44" => { "value" => "Death of household member in last settled accommodation" },
"16" => { "value" => "To move nearer to family, friends or school" },
"17" => { "value" => "To move nearer to work" },
"48" => { "value" => "Domestic abuse - previously joint tenancy with partner" },
"49" => { "value" => "Domestic abuse - other" },
"10" => { "value" => "Racial harassment" },
"31" => { "value" => "Hate crime" },
"11" => { "value" => "Other problems with neighbours" },
"34" => { "value" => "Repossession" },
"54" => { "value" => "Could no longer afford rent or mortgage" },
"12" => { "value" => "Property unsuitable because of overcrowding" },
"13" => { "value" => "Property unsuitable because of ill health or disability" },
"14" => { "value" => "Property unsuitable because of poor condition" },
"29" => { "value" => "Under occupation (offered incentive to downsize)" },
"30" => { "value" => "Under occupation (no incentive)" },
"18" => { "value" => "To move to accommodation with support" },
"19" => { "value" => "To move to independent accommodation" },
"20" => { "value" => "Other" },
"28" => { "value" => "Don’t know" },
"divider" => { "value" => true },
"47" => { "value" => "Tenant prefers not to say" },
}.freeze
else
{
"40" => {
"value" => "End of assured shorthold tenancy (no fault)",
},
"41" => {
"value" => "End of assured shorthold tenancy (eviction or tenant at fault)",
},
"42" => {
"value" => "End of fixed term tenancy (no fault)",
},
"43" => {
"value" => "End of fixed term tenancy (eviction or tenant at fault)",
},
"1" => {
"value" => "Permanently decanted from another property owned by this landlord",
},
"46" => {
"value" => "Discharged from long-stay hospital or similar institution",
},
"45" => {
"value" => "Discharged from prison",
},
"2" => {
"value" => "Left home country as a refugee",
},
"4" => {
"value" => "Loss of tied accommodation",
},
"9" => {
"value" => "Asked to leave by family or friends",
},
"44" => {
"value" => "Death of household member in last settled accommodation",
},
"8" => {
"value" => "Relationship breakdown (non-violent) with partner",
},
"16" => {
"value" => "To move nearer to family, friends or school",
},
"17" => {
"value" => "To move nearer to work",
},
"48" => {
"value" => "Domestic abuse - previously joint tenancy with partner",
},
"49" => {
"value" => "Domestic abuse - other",
},
"31" => {
"value" => "Hate crime",
},
"10" => {
"value" => "Racial harassment",
},
"11" => {
"value" => "Other problems with neighbours",
},
"35" => {
"value" => "Couldn’t afford fees attached to renewing the tenancy",
},
"36" => {
"value" => "Couldn’t afford increase in rent",
},
"38" => {
"value" => "Couldn’t afford rent or mortgage (employment)",
},
"37" => {
"value" => "Couldn’t afford rent or mortgage (welfare reforms)",
},
"39" => {
"value" => "Couldn’t afford rent or mortgage (other)",
},
"34" => {
"value" => "Repossession",
},
"12" => {
"value" => "Property unsuitable because of overcrowding",
},
"13" => {
"value" => "Property unsuitable because of ill health or disability",
},
"14" => {
"value" => "Property unsuitable because of poor condition",
},
"18" => {
"value" => "To move to accommodation with support",
},
"19" => {
"value" => "To move to independent accommodation",
},
"30" => {
"value" => "Under occupation (no incentive)",
},
"29" => {
"value" => "Under occupation (offered incentive to downsize)",
},
"20" => {
"value" => "Other",
},
"47" => {
"value" => "Tenant prefers not to say",
},
"divider" => {
"value" => true,
},
"28" => {
"value" => "Don’t know",
},
"40" => { "value" => "End of assured shorthold tenancy (no fault)" },
"41" => { "value" => "End of assured shorthold tenancy (eviction or tenant at fault)" },
"42" => { "value" => "End of fixed term tenancy (no fault)" },
"43" => { "value" => "End of fixed term tenancy (eviction or tenant at fault)" },
"1" => { "value" => "Permanently decanted from another property owned by this landlord" },
"46" => { "value" => "Discharged from long-stay hospital or similar institution" },
"45" => { "value" => "Discharged from prison" },
"2" => { "value" => "Left home country as a refugee" },
"4" => { "value" => "Loss of tied accommodation" },
"9" => { "value" => "Asked to leave by family or friends" },
"44" => { "value" => "Death of household member in last settled accommodation" },
"8" => { "value" => "Relationship breakdown (non-violent) with partner" },
"16" => { "value" => "To move nearer to family, friends or school" },
"17" => { "value" => "To move nearer to work" },
"48" => { "value" => "Domestic abuse - previously joint tenancy with partner" },
"49" => { "value" => "Domestic abuse - other" },
"31" => { "value" => "Hate crime" },
"10" => { "value" => "Racial harassment" },
"11" => { "value" => "Other problems with neighbours" },
"35" => { "value" => "Couldn’t afford fees attached to renewing the tenancy" },
"36" => { "value" => "Couldn’t afford increase in rent" },
"38" => { "value" => "Couldn’t afford rent or mortgage (employment)" },
"37" => { "value" => "Couldn’t afford rent or mortgage (welfare reforms)" },
"39" => { "value" => "Couldn’t afford rent or mortgage (other)" },
"34" => { "value" => "Repossession" },
"12" => { "value" => "Property unsuitable because of overcrowding" },
"13" => { "value" => "Property unsuitable because of ill health or disability" },
"14" => { "value" => "Property unsuitable because of poor condition" },
"18" => { "value" => "To move to accommodation with support" },
"19" => { "value" => "To move to independent accommodation" },
"30" => { "value" => "Under occupation (no incentive)" },
"29" => { "value" => "Under occupation (offered incentive to downsize)" },
"20" => { "value" => "Other" },
"47" => { "value" => "Tenant prefers not to say" },
"divider" => { "value" => true },
"28" => { "value" => "Don’t know" },
}.freeze
end
end

48
app/models/form/lettings/questions/reason_renewal.rb

@ -18,47 +18,23 @@ class Form::Lettings::Questions::ReasonRenewal < ::Form::Question
def answer_options
if form.start_year_after_2024?
{
"50" => {
"value" => "End of social housing tenancy - no fault",
},
"51" => {
"value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)",
},
"52" => {
"value" => "End of social housing tenancy - evicted due to rent arrears",
},
"53" => {
"value" => "End of social housing tenancy - evicted for any other reason",
},
"20" => {
"value" => "Other",
},
"47" => {
"value" => "Tenant prefers not to say",
},
"divider" => {
"value" => true,
},
"28" => {
"value" => "Don’t know",
},
"50" => { "value" => "End of social housing tenancy - no fault" },
"51" => { "value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)" },
"52" => { "value" => "End of social housing tenancy - evicted due to rent arrears" },
"53" => { "value" => "End of social housing tenancy - evicted for any other reason" },
"20" => { "value" => "Other" },
"47" => { "value" => "Tenant prefers not to say" },
"divider" => { "value" => true },
"28" => { "value" => "Don’t know" },
}.freeze
else
{
"40" => { "value" => "End of assured shorthold tenancy (no fault)" },
"42" => { "value" => "End of fixed term tenancy (no fault)" },
"20" => {
"value" => "Other",
},
"47" => {
"value" => "Tenant prefers not to say",
},
"divider" => {
"value" => true,
},
"28" => {
"value" => "Don’t know",
},
"20" => { "value" => "Other" },
"47" => { "value" => "Tenant prefers not to say" },
"divider" => { "value" => true },
"28" => { "value" => "Don’t know" },
}.freeze
end
end

50
spec/models/form/lettings/questions/reason_renewal_spec.rb

@ -56,19 +56,10 @@ RSpec.describe Form::Lettings::Questions::ReasonRenewal, type: :model do
expect(question.answer_options).to eq({
"40" => { "value" => "End of assured shorthold tenancy (no fault)" },
"42" => { "value" => "End of fixed term tenancy (no fault)" },
"20" => {
"value" => "Other",
},
"47" => {
"value" => "Tenant prefers not to say",
},
"divider" => {
"value" => true,
},
"28" => {
"value" => "Don’t know",
},
"20" => { "value" => "Other" },
"47" => { "value" => "Tenant prefers not to say" },
"divider" => { "value" => true },
"28" => { "value" => "Don’t know" },
})
end
end
@ -80,31 +71,14 @@ RSpec.describe Form::Lettings::Questions::ReasonRenewal, type: :model do
it "has the correct answer_options" do
expect(question.answer_options).to eq({
"50" => {
"value" => "End of social housing tenancy - no fault",
},
"51" => {
"value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)",
},
"52" => {
"value" => "End of social housing tenancy - evicted due to rent arrears",
},
"53" => {
"value" => "End of social housing tenancy - evicted for any other reason",
},
"20" => {
"value" => "Other",
},
"47" => {
"value" => "Tenant prefers not to say",
},
"divider" => {
"value" => true,
},
"28" => {
"value" => "Don’t know",
},
"50" => { "value" => "End of social housing tenancy - no fault" },
"51" => { "value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)" },
"52" => { "value" => "End of social housing tenancy - evicted due to rent arrears" },
"53" => { "value" => "End of social housing tenancy - evicted for any other reason" },
"20" => { "value" => "Other" },
"47" => { "value" => "Tenant prefers not to say" },
"divider" => { "value" => true },
"28" => { "value" => "Don’t know" },
})
end
end

272
spec/models/form/lettings/questions/reason_spec.rb

@ -54,114 +54,42 @@ RSpec.describe Form::Lettings::Questions::Reason, type: :model do
it "has the correct answer_options" do
expect(question.answer_options).to eq({
"40" => {
"value" => "End of assured shorthold tenancy (no fault)",
},
"41" => {
"value" => "End of assured shorthold tenancy (eviction or tenant at fault)",
},
"42" => {
"value" => "End of fixed term tenancy (no fault)",
},
"43" => {
"value" => "End of fixed term tenancy (eviction or tenant at fault)",
},
"1" => {
"value" => "Permanently decanted from another property owned by this landlord",
},
"46" => {
"value" => "Discharged from long-stay hospital or similar institution",
},
"45" => {
"value" => "Discharged from prison",
},
"2" => {
"value" => "Left home country as a refugee",
},
"4" => {
"value" => "Loss of tied accommodation",
},
"9" => {
"value" => "Asked to leave by family or friends",
},
"44" => {
"value" => "Death of household member in last settled accommodation",
},
"8" => {
"value" => "Relationship breakdown (non-violent) with partner",
},
"16" => {
"value" => "To move nearer to family, friends or school",
},
"17" => {
"value" => "To move nearer to work",
},
"48" => {
"value" => "Domestic abuse - previously joint tenancy with partner",
},
"49" => {
"value" => "Domestic abuse - other",
},
"31" => {
"value" => "Hate crime",
},
"10" => {
"value" => "Racial harassment",
},
"11" => {
"value" => "Other problems with neighbours",
},
"35" => {
"value" => "Couldn’t afford fees attached to renewing the tenancy",
},
"36" => {
"value" => "Couldn’t afford increase in rent",
},
"38" => {
"value" => "Couldn’t afford rent or mortgage (employment)",
},
"37" => {
"value" => "Couldn’t afford rent or mortgage (welfare reforms)",
},
"39" => {
"value" => "Couldn’t afford rent or mortgage (other)",
},
"34" => {
"value" => "Repossession",
},
"12" => {
"value" => "Property unsuitable because of overcrowding",
},
"13" => {
"value" => "Property unsuitable because of ill health or disability",
},
"14" => {
"value" => "Property unsuitable because of poor condition",
},
"18" => {
"value" => "To move to accommodation with support",
},
"19" => {
"value" => "To move to independent accommodation",
},
"30" => {
"value" => "Under occupation (no incentive)",
},
"29" => {
"value" => "Under occupation (offered incentive to downsize)",
},
"20" => {
"value" => "Other",
},
"47" => {
"value" => "Tenant prefers not to say",
},
"divider" => {
"value" => true,
},
"28" => {
"value" => "Don’t know",
},
"40" => { "value" => "End of assured shorthold tenancy (no fault)" },
"41" => { "value" => "End of assured shorthold tenancy (eviction or tenant at fault)" },
"42" => { "value" => "End of fixed term tenancy (no fault)" },
"43" => { "value" => "End of fixed term tenancy (eviction or tenant at fault)" },
"1" => { "value" => "Permanently decanted from another property owned by this landlord" },
"46" => { "value" => "Discharged from long-stay hospital or similar institution" },
"45" => { "value" => "Discharged from prison" },
"2" => { "value" => "Left home country as a refugee" },
"4" => { "value" => "Loss of tied accommodation" },
"9" => { "value" => "Asked to leave by family or friends" },
"44" => { "value" => "Death of household member in last settled accommodation" },
"8" => { "value" => "Relationship breakdown (non-violent) with partner" },
"16" => { "value" => "To move nearer to family, friends or school" },
"17" => { "value" => "To move nearer to work" },
"48" => { "value" => "Domestic abuse - previously joint tenancy with partner" },
"49" => { "value" => "Domestic abuse - other" },
"31" => { "value" => "Hate crime" },
"10" => { "value" => "Racial harassment" },
"11" => { "value" => "Other problems with neighbours" },
"35" => { "value" => "Couldn’t afford fees attached to renewing the tenancy" },
"36" => { "value" => "Couldn’t afford increase in rent" },
"38" => { "value" => "Couldn’t afford rent or mortgage (employment)" },
"37" => { "value" => "Couldn’t afford rent or mortgage (welfare reforms)" },
"39" => { "value" => "Couldn’t afford rent or mortgage (other)" },
"34" => { "value" => "Repossession" },
"12" => { "value" => "Property unsuitable because of overcrowding" },
"13" => { "value" => "Property unsuitable because of ill health or disability" },
"14" => { "value" => "Property unsuitable because of poor condition" },
"18" => { "value" => "To move to accommodation with support" },
"19" => { "value" => "To move to independent accommodation" },
"30" => { "value" => "Under occupation (no incentive)" },
"29" => { "value" => "Under occupation (offered incentive to downsize)" },
"20" => { "value" => "Other" },
"47" => { "value" => "Tenant prefers not to say" },
"divider" => { "value" => true },
"28" => { "value" => "Don’t know" },
})
end
end
@ -177,102 +105,38 @@ RSpec.describe Form::Lettings::Questions::Reason, type: :model do
it "has the correct answer_options" do
expect(question.answer_options).to eq({
"50" => {
"value" => "End of social housing tenancy - no fault",
},
"51" => {
"value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)",
},
"52" => {
"value" => "End of social housing tenancy - evicted due to rent arrears",
},
"53" => {
"value" => "End of social housing tenancy - evicted for any other reason",
},
"1" => {
"value" => "Permanently decanted from another property owned by this landlord",
},
"2" => {
"value" => "Left home country as a refugee",
},
"45" => {
"value" => "Discharged from prison",
},
"46" => {
"value" => "Discharged from long-stay hospital or similar institution",
},
"4" => {
"value" => "Loss of tied accommodation",
},
"9" => {
"value" => "Asked to leave by family or friends",
},
"8" => {
"value" => "Relationship breakdown (non-violent) with partner",
},
"44" => {
"value" => "Death of household member in last settled accommodation",
},
"16" => {
"value" => "To move nearer to family, friends or school",
},
"17" => {
"value" => "To move nearer to work",
},
"48" => {
"value" => "Domestic abuse - previously joint tenancy with partner",
},
"49" => {
"value" => "Domestic abuse - other",
},
"10" => {
"value" => "Racial harassment",
},
"31" => {
"value" => "Hate crime",
},
"11" => {
"value" => "Other problems with neighbours",
},
"34" => {
"value" => "Repossession",
},
"54" => {
"value" => "Could no longer afford rent or mortgage",
},
"12" => {
"value" => "Property unsuitable because of overcrowding",
},
"13" => {
"value" => "Property unsuitable because of ill health or disability",
},
"14" => {
"value" => "Property unsuitable because of poor condition",
},
"29" => {
"value" => "Under occupation (offered incentive to downsize)",
},
"30" => {
"value" => "Under occupation (no incentive)",
},
"18" => {
"value" => "To move to accommodation with support",
},
"19" => {
"value" => "To move to independent accommodation",
},
"20" => {
"value" => "Other",
},
"28" => {
"value" => "Don’t know",
},
"divider" => {
"value" => true,
},
"47" => {
"value" => "Tenant prefers not to say",
},
"50" => { "value" => "End of social housing tenancy - no fault" },
"51" => { "value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)" },
"52" => { "value" => "End of social housing tenancy - evicted due to rent arrears" },
"53" => { "value" => "End of social housing tenancy - evicted for any other reason" },
"1" => { "value" => "Permanently decanted from another property owned by this landlord" },
"2" => { "value" => "Left home country as a refugee" },
"45" => { "value" => "Discharged from prison" },
"46" => { "value" => "Discharged from long-stay hospital or similar institution" },
"4" => { "value" => "Loss of tied accommodation" },
"9" => { "value" => "Asked to leave by family or friends" },
"8" => { "value" => "Relationship breakdown (non-violent) with partner" },
"44" => { "value" => "Death of household member in last settled accommodation" },
"16" => { "value" => "To move nearer to family, friends or school" },
"17" => { "value" => "To move nearer to work" },
"48" => { "value" => "Domestic abuse - previously joint tenancy with partner" },
"49" => { "value" => "Domestic abuse - other" },
"10" => { "value" => "Racial harassment" },
"31" => { "value" => "Hate crime" },
"11" => { "value" => "Other problems with neighbours" },
"34" => { "value" => "Repossession" },
"54" => { "value" => "Could no longer afford rent or mortgage" },
"12" => { "value" => "Property unsuitable because of overcrowding" },
"13" => { "value" => "Property unsuitable because of ill health or disability" },
"14" => { "value" => "Property unsuitable because of poor condition" },
"29" => { "value" => "Under occupation (offered incentive to downsize)" },
"30" => { "value" => "Under occupation (no incentive)" },
"18" => { "value" => "To move to accommodation with support" },
"19" => { "value" => "To move to independent accommodation" },
"20" => { "value" => "Other" },
"28" => { "value" => "Don’t know" },
"divider" => { "value" => true },
"47" => { "value" => "Tenant prefers not to say" },
})
end
end

Loading…
Cancel
Save