Browse Source

Push fixes #7

pull/264/head
Stéphane Meny 3 years ago
parent
commit
7210915901
No known key found for this signature in database
GPG Key ID: 9D0AFEA988527923
  1. 198
      spec/models/case_log_spec.rb
  2. 38
      spec/models/validations/property_validations_spec.rb
  3. 4
      spec/presenters/error_summary_full_messages_presenter_spec.rb
  4. 2
      spec/requests/auth/passwords_controller_spec.rb

198
spec/models/case_log_spec.rb

@ -1,7 +1,7 @@
require "rails_helper" require "rails_helper"
require_relative "../request_helper" require_relative "../request_helper"
RSpec.describe Form, type: :model do RSpec.describe CaseLog do
let(:owning_organisation) { FactoryBot.create(:organisation) } let(:owning_organisation) { FactoryBot.create(:organisation) }
let(:managing_organisation) { owning_organisation } let(:managing_organisation) { owning_organisation }
@ -18,21 +18,31 @@ RSpec.describe Form, type: :model do
expect(case_log.form_name).to eq("2021_2022") expect(case_log.form_name).to eq("2021_2022")
expect(case_log_2.form_name).to eq("2021_2022") expect(case_log_2.form_name).to eq("2021_2022")
expect(case_log_year_2.form_name).to eq("2023_2024") expect(case_log_year_2.form_name).to eq("2023_2024")
expect(case_log.form).to be_a(described_class) expect(case_log.form).to be_a(Form)
end end
end end
describe "#new" do describe "#new" do
it "raises an error when offered is present and invalid" do
expect {
described_class.create!(
offered: "random",
owning_organisation: owning_organisation,
managing_organisation: managing_organisation,
)
}.to raise_error(ActiveRecord::RecordInvalid)
end
it "validates age is a number" do it "validates age is a number" do
expect { expect {
CaseLog.create!( described_class.create!(
age1: "random", age1: "random",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation, managing_organisation: managing_organisation,
) )
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
age3: "random", age3: "random",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation, managing_organisation: managing_organisation,
@ -42,14 +52,14 @@ RSpec.describe Form, type: :model do
it "validates age is under 120" do it "validates age is under 120" do
expect { expect {
CaseLog.create!( described_class.create!(
age1: 121, age1: 121,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation, managing_organisation: managing_organisation,
) )
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
age3: 121, age3: 121,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation, managing_organisation: managing_organisation,
@ -59,14 +69,14 @@ RSpec.describe Form, type: :model do
it "validates age is over 0" do it "validates age is over 0" do
expect { expect {
CaseLog.create!( described_class.create!(
age1: 0, age1: 0,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation, managing_organisation: managing_organisation,
) )
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
age3: 0, age3: 0,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation, managing_organisation: managing_organisation,
@ -77,7 +87,7 @@ RSpec.describe Form, type: :model do
context "reasonable preference is yes" do context "reasonable preference is yes" do
it "validates that previously homeless should be selected" do it "validates that previously homeless should be selected" do
expect { expect {
CaseLog.create!( described_class.create!(
homeless: "No", homeless: "No",
reasonpref: "Yes", reasonpref: "Yes",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -90,7 +100,7 @@ RSpec.describe Form, type: :model do
context "reasonable preference is no" do context "reasonable preference is no" do
it "validates no reason is needed" do it "validates no reason is needed" do
expect { expect {
CaseLog.create!( described_class.create!(
reasonpref: "No", reasonpref: "No",
rp_homeless: "No", rp_homeless: "No",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -101,7 +111,7 @@ RSpec.describe Form, type: :model do
it "validates that no reason has been provided" do it "validates that no reason has been provided" do
expect { expect {
CaseLog.create!( described_class.create!(
reasonpref: "No", reasonpref: "No",
rp_medwel: "Yes", rp_medwel: "Yes",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -114,7 +124,7 @@ RSpec.describe Form, type: :model do
context "reason for leaving last settled home validation" do context "reason for leaving last settled home validation" do
it "Reason for leaving must be don’t know if reason for leaving settled home (Q9a) is don’t know." do it "Reason for leaving must be don’t know if reason for leaving settled home (Q9a) is don’t know." do
expect { expect {
CaseLog.create!(reason: "Don’t know", described_class.create!(reason: "Don’t know",
underoccupation_benefitcap: "Yes - benefit cap", underoccupation_benefitcap: "Yes - benefit cap",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -125,7 +135,7 @@ RSpec.describe Form, type: :model do
context "other reason for leaving last settled home validation" do context "other reason for leaving last settled home validation" do
it "must be provided if main reason for leaving last settled home was given as other" do it "must be provided if main reason for leaving last settled home was given as other" do
expect { expect {
CaseLog.create!(reason: "Other", described_class.create!(reason: "Other",
other_reason_for_leaving_last_settled_home: nil, other_reason_for_leaving_last_settled_home: nil,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -134,7 +144,7 @@ RSpec.describe Form, type: :model do
it "must not be provided if the main reason for leaving settled home is not other" do it "must not be provided if the main reason for leaving settled home is not other" do
expect { expect {
CaseLog.create!(reason: "Repossession", described_class.create!(reason: "Repossession",
other_reason_for_leaving_last_settled_home: "the other reason provided", other_reason_for_leaving_last_settled_home: "the other reason provided",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -145,7 +155,7 @@ RSpec.describe Form, type: :model do
context "armed forces injured validation" do context "armed forces injured validation" do
it "must not be answered if tenant was not a regular or reserve in armed forces" do it "must not be answered if tenant was not a regular or reserve in armed forces" do
expect { expect {
CaseLog.create!(armedforces: "No", described_class.create!(armedforces: "No",
reservist: "Yes", reservist: "Yes",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -156,7 +166,7 @@ RSpec.describe Form, type: :model do
context "Validate pregnancy questions" do context "Validate pregnancy questions" do
it "Cannot answer yes if no female tenants" do it "Cannot answer yes if no female tenants" do
expect { expect {
CaseLog.create!(preg_occ: "Yes", described_class.create!(preg_occ: "Yes",
sex1: "Male", sex1: "Male",
age1: 20, age1: 20,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -166,7 +176,7 @@ RSpec.describe Form, type: :model do
it "Cannot answer yes if no female tenants within age range" do it "Cannot answer yes if no female tenants within age range" do
expect { expect {
CaseLog.create!(preg_occ: "Yes", described_class.create!(preg_occ: "Yes",
sex1: "Female", sex1: "Female",
age1: 51, age1: 51,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -176,7 +186,7 @@ RSpec.describe Form, type: :model do
it "Cannot answer prefer not to say if no valid tenants" do it "Cannot answer prefer not to say if no valid tenants" do
expect { expect {
CaseLog.create!(preg_occ: "Prefer not to say", described_class.create!(preg_occ: "Prefer not to say",
sex1: "Male", sex1: "Male",
age1: 20, age1: 20,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -186,7 +196,7 @@ RSpec.describe Form, type: :model do
it "Can answer yes if valid tenants" do it "Can answer yes if valid tenants" do
expect { expect {
CaseLog.create!(preg_occ: "Yes", described_class.create!(preg_occ: "Yes",
sex1: "Female", sex1: "Female",
age1: 20, age1: 20,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -196,7 +206,7 @@ RSpec.describe Form, type: :model do
it "Can answer yes if valid second tenant" do it "Can answer yes if valid second tenant" do
expect { expect {
CaseLog.create!(preg_occ: "Yes", described_class.create!(preg_occ: "Yes",
sex1: "Male", age1: 99, sex1: "Male", age1: 99,
sex2: "Female", sex2: "Female",
age2: 20, age2: 20,
@ -209,7 +219,7 @@ RSpec.describe Form, type: :model do
context "Property vacancy and let as validations" do context "Property vacancy and let as validations" do
it "cannot have a previously let as type, if it hasn't been let before" do it "cannot have a previously let as type, if it hasn't been let before" do
expect { expect {
CaseLog.create!( described_class.create!(
first_time_property_let_as_social_housing: "No", first_time_property_let_as_social_housing: "No",
unitletas: "Social rent basis", unitletas: "Social rent basis",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -217,7 +227,7 @@ RSpec.describe Form, type: :model do
) )
}.not_to raise_error }.not_to raise_error
expect { expect {
CaseLog.create!( described_class.create!(
first_time_property_let_as_social_housing: "Yes", first_time_property_let_as_social_housing: "Yes",
unitletas: "Social rent basis", unitletas: "Social rent basis",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -225,7 +235,7 @@ RSpec.describe Form, type: :model do
) )
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
first_time_property_let_as_social_housing: "Yes", first_time_property_let_as_social_housing: "Yes",
unitletas: "Affordable rent basis", unitletas: "Affordable rent basis",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -233,7 +243,7 @@ RSpec.describe Form, type: :model do
) )
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
first_time_property_let_as_social_housing: "Yes", first_time_property_let_as_social_housing: "Yes",
unitletas: "Intermediate rent basis", unitletas: "Intermediate rent basis",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -241,7 +251,7 @@ RSpec.describe Form, type: :model do
) )
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
first_time_property_let_as_social_housing: "Yes", first_time_property_let_as_social_housing: "Yes",
unitletas: "Don’t know", unitletas: "Don’t know",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -252,7 +262,7 @@ RSpec.describe Form, type: :model do
it "must have a first let reason for vacancy if it's being let as social housing for the first time" do it "must have a first let reason for vacancy if it's being let as social housing for the first time" do
expect { expect {
CaseLog.create!( described_class.create!(
first_time_property_let_as_social_housing: "Yes", first_time_property_let_as_social_housing: "Yes",
rsnvac: "First let of new-build property", rsnvac: "First let of new-build property",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -260,7 +270,7 @@ RSpec.describe Form, type: :model do
) )
}.not_to raise_error }.not_to raise_error
expect { expect {
CaseLog.create!( described_class.create!(
first_time_property_let_as_social_housing: "Yes", first_time_property_let_as_social_housing: "Yes",
rsnvac: "First let of conversion, rehabilitation or acquired property", rsnvac: "First let of conversion, rehabilitation or acquired property",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -268,7 +278,7 @@ RSpec.describe Form, type: :model do
) )
}.not_to raise_error }.not_to raise_error
expect { expect {
CaseLog.create!( described_class.create!(
first_time_property_let_as_social_housing: "Yes", first_time_property_let_as_social_housing: "Yes",
rsnvac: "First let of leased property", rsnvac: "First let of leased property",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -276,7 +286,7 @@ RSpec.describe Form, type: :model do
) )
}.not_to raise_error }.not_to raise_error
expect { expect {
CaseLog.create!( described_class.create!(
first_time_property_let_as_social_housing: "Yes", first_time_property_let_as_social_housing: "Yes",
rsnvac: "Tenant moved to care home", rsnvac: "Tenant moved to care home",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -289,7 +299,7 @@ RSpec.describe Form, type: :model do
context "Shared accomodation bedrooms validation" do context "Shared accomodation bedrooms validation" do
it "you must have more than zero bedrooms" do it "you must have more than zero bedrooms" do
expect { expect {
CaseLog.create!(unittype_gn: "Shared house", described_class.create!(unittype_gn: "Shared house",
beds: 0, beds: 0,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -298,7 +308,7 @@ RSpec.describe Form, type: :model do
it "you must answer less than 8 bedrooms" do it "you must answer less than 8 bedrooms" do
expect { expect {
CaseLog.create!(unittype_gn: "Shared bungalow", described_class.create!(unittype_gn: "Shared bungalow",
beds: 8, beds: 8,
other_hhmemb: 1, other_hhmemb: 1,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -308,7 +318,7 @@ RSpec.describe Form, type: :model do
it "you must answer less than 8 bedrooms" do it "you must answer less than 8 bedrooms" do
expect { expect {
CaseLog.create!(unittype_gn: "Shared bungalow", described_class.create!(unittype_gn: "Shared bungalow",
beds: 4, beds: 4,
other_hhmemb: 0, other_hhmemb: 0,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -318,7 +328,7 @@ RSpec.describe Form, type: :model do
it "A bedsit must only have one room" do it "A bedsit must only have one room" do
expect { expect {
CaseLog.create!(unittype_gn: "Bedsit", described_class.create!(unittype_gn: "Bedsit",
beds: 2, beds: 2,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -327,7 +337,7 @@ RSpec.describe Form, type: :model do
it "A bedsit must only have one room" do it "A bedsit must only have one room" do
expect { expect {
CaseLog.create!(unittype_gn: "Bedsit", described_class.create!(unittype_gn: "Bedsit",
beds: 0, beds: 0,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -338,7 +348,7 @@ RSpec.describe Form, type: :model do
context "outstanding rent or charges validation" do context "outstanding rent or charges validation" do
it "must be not be anwered if answered no to outstanding rent or charges" do it "must be not be anwered if answered no to outstanding rent or charges" do
expect { expect {
CaseLog.create!(hbrentshortfall: "No", described_class.create!(hbrentshortfall: "No",
tshortfall: 99, tshortfall: 99,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -349,7 +359,7 @@ RSpec.describe Form, type: :model do
context "tenant’s income is from Universal Credit, state pensions or benefits" do context "tenant’s income is from Universal Credit, state pensions or benefits" do
it "Cannot be All if person 1 works full time" do it "Cannot be All if person 1 works full time" do
expect { expect {
CaseLog.create!( described_class.create!(
benefits: "All", benefits: "All",
ecstat1: "Full-time - 30 hours or more", ecstat1: "Full-time - 30 hours or more",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -360,7 +370,7 @@ RSpec.describe Form, type: :model do
it "Cannot be All if person 1 works part time" do it "Cannot be All if person 1 works part time" do
expect { expect {
CaseLog.create!( described_class.create!(
benefits: "All", benefits: "All",
ecstat1: "Part-time - Less than 30 hours", ecstat1: "Part-time - Less than 30 hours",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -371,7 +381,7 @@ RSpec.describe Form, type: :model do
it "Cannot be 1 All if any of persons 2-4 are person 1's partner and work part or full time" do it "Cannot be 1 All if any of persons 2-4 are person 1's partner and work part or full time" do
expect { expect {
CaseLog.create!( described_class.create!(
benefits: "All", benefits: "All",
relat2: "Partner", relat2: "Partner",
ecstat2: "Part-time - Less than 30 hours", ecstat2: "Part-time - Less than 30 hours",
@ -385,7 +395,7 @@ RSpec.describe Form, type: :model do
context "fixed term tenancy length" do context "fixed term tenancy length" do
it "Must not be completed if Type of main tenancy is not responded with either Secure or Assured shorthold " do it "Must not be completed if Type of main tenancy is not responded with either Secure or Assured shorthold " do
expect { expect {
CaseLog.create!(tenancy: "Other", described_class.create!(tenancy: "Other",
tenancylength: 10, tenancylength: 10,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -394,21 +404,21 @@ RSpec.describe Form, type: :model do
it "Must be completed and between 2 and 99 if type of tenancy is Assured shorthold" do it "Must be completed and between 2 and 99 if type of tenancy is Assured shorthold" do
expect { expect {
CaseLog.create!(tenancy: "Assured Shorthold", described_class.create!(tenancy: "Assured Shorthold",
tenancylength: 1, tenancylength: 1,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!(tenancy: "Assured Shorthold", described_class.create!(tenancy: "Assured Shorthold",
tenancylength: nil, tenancylength: nil,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!(tenancy: "Assured Shorthold", described_class.create!(tenancy: "Assured Shorthold",
tenancylength: 2, tenancylength: 2,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -417,28 +427,28 @@ RSpec.describe Form, type: :model do
it "Must be empty or between 2 and 99 if type of tenancy is Secure" do it "Must be empty or between 2 and 99 if type of tenancy is Secure" do
expect { expect {
CaseLog.create!(tenancy: "Secure (including flexible)", described_class.create!(tenancy: "Secure (including flexible)",
tenancylength: 1, tenancylength: 1,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!(tenancy: "Secure (including flexible)", described_class.create!(tenancy: "Secure (including flexible)",
tenancylength: 100, tenancylength: 100,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!(tenancy: "Secure (including flexible)", described_class.create!(tenancy: "Secure (including flexible)",
tenancylength: nil, tenancylength: nil,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
}.not_to raise_error }.not_to raise_error
expect { expect {
CaseLog.create!(tenancy: "Secure (including flexible)", described_class.create!(tenancy: "Secure (including flexible)",
tenancylength: 2, tenancylength: 2,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -449,7 +459,7 @@ RSpec.describe Form, type: :model do
context "armed forces active validation" do context "armed forces active validation" do
it "must not be answered if not ever served as a regular" do it "must not be answered if not ever served as a regular" do
expect { expect {
CaseLog.create!(armedforces: "No", described_class.create!(armedforces: "No",
leftreg: "Yes", leftreg: "Yes",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -459,7 +469,7 @@ RSpec.describe Form, type: :model do
# Crossover over tests here as injured must be answered as well for no error # Crossover over tests here as injured must be answered as well for no error
it "must be answered if ever served in the forces as a regular" do it "must be answered if ever served in the forces as a regular" do
expect do expect do
CaseLog.create!(armedforces: "A current or former regular in the UK Armed Forces (excluding National Service)", described_class.create!(armedforces: "A current or former regular in the UK Armed Forces (excluding National Service)",
leftreg: "Yes", leftreg: "Yes",
reservist: "Yes", reservist: "Yes",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -471,7 +481,7 @@ RSpec.describe Form, type: :model do
context "household_member_validations" do context "household_member_validations" do
it "validate that persons aged under 16 must have relationship Child" do it "validate that persons aged under 16 must have relationship Child" do
expect { expect {
CaseLog.create!( described_class.create!(
age2: 14, age2: 14,
relat2: "Partner", relat2: "Partner",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -482,7 +492,7 @@ RSpec.describe Form, type: :model do
it "validate that persons aged over 70 must be retired" do it "validate that persons aged over 70 must be retired" do
expect { expect {
CaseLog.create!( described_class.create!(
age2: 71, age2: 71,
ecstat2: "Full-time - 30 hours or more", ecstat2: "Full-time - 30 hours or more",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -493,7 +503,7 @@ RSpec.describe Form, type: :model do
it "validate that a male, retired persons must be over 65" do it "validate that a male, retired persons must be over 65" do
expect { expect {
CaseLog.create!( described_class.create!(
age2: 64, age2: 64,
sex2: "Male", sex2: "Male",
ecstat2: "Retired", ecstat2: "Retired",
@ -505,7 +515,7 @@ RSpec.describe Form, type: :model do
it "validate that a female, retired persons must be over 60" do it "validate that a female, retired persons must be over 60" do
expect { expect {
CaseLog.create!( described_class.create!(
age2: 59, age2: 59,
sex2: "Female", sex2: "Female",
ecstat2: "Retired", ecstat2: "Retired",
@ -517,7 +527,7 @@ RSpec.describe Form, type: :model do
it "validate that persons aged under 16 must be a child (economically speaking)" do it "validate that persons aged under 16 must be a child (economically speaking)" do
expect { expect {
CaseLog.create!( described_class.create!(
age2: 15, age2: 15,
ecstat2: "Full-time - 30 hours or more", ecstat2: "Full-time - 30 hours or more",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -528,7 +538,7 @@ RSpec.describe Form, type: :model do
it "validate that persons aged between 16 and 19 that are a child must be a full time student or economic status refused" do it "validate that persons aged between 16 and 19 that are a child must be a full time student or economic status refused" do
expect { expect {
CaseLog.create!( described_class.create!(
age2: 17, age2: 17,
relat2: "Child - includes young adult and grown-up", relat2: "Child - includes young adult and grown-up",
ecstat2: "Full-time - 30 hours or more", ecstat2: "Full-time - 30 hours or more",
@ -540,7 +550,7 @@ RSpec.describe Form, type: :model do
it "validate that persons aged under 16 must be a child relationship" do it "validate that persons aged under 16 must be a child relationship" do
expect { expect {
CaseLog.create!( described_class.create!(
age2: 15, age2: 15,
relat2: "Partner", relat2: "Partner",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -551,7 +561,7 @@ RSpec.describe Form, type: :model do
it "validate that no more than 1 partner relationship exists" do it "validate that no more than 1 partner relationship exists" do
expect { expect {
CaseLog.create!( described_class.create!(
relat2: "Partner", relat2: "Partner",
relat3: "Partner", relat3: "Partner",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -564,14 +574,14 @@ RSpec.describe Form, type: :model do
context "other tenancy type validation" do context "other tenancy type validation" do
it "must be provided if tenancy type was given as other" do it "must be provided if tenancy type was given as other" do
expect { expect {
CaseLog.create!(tenancy: "Other", described_class.create!(tenancy: "Other",
tenancyother: nil, tenancyother: nil,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!(tenancy: "Other", described_class.create!(tenancy: "Other",
tenancyother: "type", tenancyother: "type",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -580,14 +590,14 @@ RSpec.describe Form, type: :model do
it "must not be provided if tenancy type is not other" do it "must not be provided if tenancy type is not other" do
expect { expect {
CaseLog.create!(tenancy: "Secure (including flexible)", described_class.create!(tenancy: "Secure (including flexible)",
tenancyother: "the other reason provided", tenancyother: "the other reason provided",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!(tenancy: "Secure (including flexible)", described_class.create!(tenancy: "Secure (including flexible)",
tenancyother: nil, tenancyother: nil,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -598,7 +608,7 @@ RSpec.describe Form, type: :model do
context "income ranges" do context "income ranges" do
it "validates net income maximum" do it "validates net income maximum" do
expect { expect {
CaseLog.create!( described_class.create!(
ecstat1: "Full-time - 30 hours or more", ecstat1: "Full-time - 30 hours or more",
earnings: 5000, earnings: 5000,
incfreq: "Weekly", incfreq: "Weekly",
@ -610,7 +620,7 @@ RSpec.describe Form, type: :model do
it "validates net income minimum" do it "validates net income minimum" do
expect { expect {
CaseLog.create!( described_class.create!(
ecstat1: "Full-time - 30 hours or more", ecstat1: "Full-time - 30 hours or more",
earnings: 1, earnings: 1,
incfreq: "Weekly", incfreq: "Weekly",
@ -654,7 +664,7 @@ RSpec.describe Form, type: :model do
context "major repairs date" do context "major repairs date" do
it "cannot be later than the tenancy start date" do it "cannot be later than the tenancy start date" do
expect { expect {
CaseLog.create!( described_class.create!(
mrcdate: Date.new(2021, 10, 10), mrcdate: Date.new(2021, 10, 10),
startdate: Date.new(2021, 10, 9), startdate: Date.new(2021, 10, 9),
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -663,7 +673,7 @@ RSpec.describe Form, type: :model do
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
mrcdate: Date.new(2021, 10, 9), mrcdate: Date.new(2021, 10, 9),
startdate: Date.new(2021, 10, 10), startdate: Date.new(2021, 10, 10),
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -674,7 +684,7 @@ RSpec.describe Form, type: :model do
it "must not be completed if reason for vacancy is first let" do it "must not be completed if reason for vacancy is first let" do
expect { expect {
CaseLog.create!( described_class.create!(
mrcdate: Date.new(2020, 10, 10), mrcdate: Date.new(2020, 10, 10),
rsnvac: "First let of new-build property", rsnvac: "First let of new-build property",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -683,7 +693,7 @@ RSpec.describe Form, type: :model do
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
mrcdate: Date.new(2020, 10, 10), mrcdate: Date.new(2020, 10, 10),
rsnvac: "First let of conversion, rehabilitation or acquired property", rsnvac: "First let of conversion, rehabilitation or acquired property",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -692,7 +702,7 @@ RSpec.describe Form, type: :model do
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
mrcdate: Date.new(2020, 10, 10), mrcdate: Date.new(2020, 10, 10),
rsnvac: "First let of leased property", rsnvac: "First let of leased property",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -703,7 +713,7 @@ RSpec.describe Form, type: :model do
it "must have less than two years between the tenancy start date and major repairs date" do it "must have less than two years between the tenancy start date and major repairs date" do
expect { expect {
CaseLog.create!( described_class.create!(
startdate: Date.new(2021, 10, 10), startdate: Date.new(2021, 10, 10),
mrcdate: Date.new(2017, 10, 10), mrcdate: Date.new(2017, 10, 10),
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -716,7 +726,7 @@ RSpec.describe Form, type: :model do
context "void date" do context "void date" do
it "must have less than 10 years between the tenancy start date and void" do it "must have less than 10 years between the tenancy start date and void" do
expect { expect {
CaseLog.create!( described_class.create!(
startdate: Date.new(2021, 10, 10), startdate: Date.new(2021, 10, 10),
property_void_date: Date.new(2009, 10, 10), property_void_date: Date.new(2009, 10, 10),
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -725,7 +735,7 @@ RSpec.describe Form, type: :model do
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
startdate: Date.new(2021, 10, 10), startdate: Date.new(2021, 10, 10),
property_void_date: Date.new(2015, 10, 10), property_void_date: Date.new(2015, 10, 10),
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -736,7 +746,7 @@ RSpec.describe Form, type: :model do
it "must be before the tenancy start date" do it "must be before the tenancy start date" do
expect { expect {
CaseLog.create!( described_class.create!(
startdate: Date.new(2021, 10, 10), startdate: Date.new(2021, 10, 10),
property_void_date: Date.new(2021, 10, 11), property_void_date: Date.new(2021, 10, 11),
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -745,7 +755,7 @@ RSpec.describe Form, type: :model do
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!( described_class.create!(
startdate: Date.new(2021, 10, 10), startdate: Date.new(2021, 10, 10),
property_void_date: Date.new(2019, 10, 10), property_void_date: Date.new(2019, 10, 10),
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -756,7 +766,7 @@ RSpec.describe Form, type: :model do
it "must be before major repairs date if major repairs date provided" do it "must be before major repairs date if major repairs date provided" do
expect { expect {
CaseLog.create!( described_class.create!(
startdate: Date.new(2021, 10, 10), startdate: Date.new(2021, 10, 10),
mrcdate: Date.new(2019, 10, 10), mrcdate: Date.new(2019, 10, 10),
property_void_date: Date.new(2019, 11, 11), property_void_date: Date.new(2019, 11, 11),
@ -770,7 +780,7 @@ RSpec.describe Form, type: :model do
context "Validate pregnancy questions" do context "Validate pregnancy questions" do
it "Cannot answer yes if no female tenants" do it "Cannot answer yes if no female tenants" do
expect { expect {
CaseLog.create!(preg_occ: "Yes", described_class.create!(preg_occ: "Yes",
sex1: "Male", sex1: "Male",
age1: 20, age1: 20,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -780,7 +790,7 @@ RSpec.describe Form, type: :model do
it "Cannot answer yes if no female tenants within age range" do it "Cannot answer yes if no female tenants within age range" do
expect { expect {
CaseLog.create!(preg_occ: "Yes", described_class.create!(preg_occ: "Yes",
sex1: "Female", sex1: "Female",
age1: 51, age1: 51,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -790,7 +800,7 @@ RSpec.describe Form, type: :model do
it "Cannot answer prefer not to say if no valid tenants" do it "Cannot answer prefer not to say if no valid tenants" do
expect { expect {
CaseLog.create!(preg_occ: "Prefer not to say", described_class.create!(preg_occ: "Prefer not to say",
sex1: "Male", sex1: "Male",
age1: 20, age1: 20,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -800,7 +810,7 @@ RSpec.describe Form, type: :model do
it "Can answer yes if valid tenants" do it "Can answer yes if valid tenants" do
expect { expect {
CaseLog.create!(preg_occ: "Yes", described_class.create!(preg_occ: "Yes",
sex1: "Female", sex1: "Female",
age1: 20, age1: 20,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -810,7 +820,7 @@ RSpec.describe Form, type: :model do
it "Can answer yes if valid second tenant" do it "Can answer yes if valid second tenant" do
expect { expect {
CaseLog.create!(preg_occ: "Yes", described_class.create!(preg_occ: "Yes",
sex1: "Male", age1: 99, sex1: "Male", age1: 99,
sex2: "Female", sex2: "Female",
age2: 20, age2: 20,
@ -823,14 +833,14 @@ RSpec.describe Form, type: :model do
context "Validate type of unit" do context "Validate type of unit" do
it "Cannot be bedsit if no of bedrooms is greater than 1" do it "Cannot be bedsit if no of bedrooms is greater than 1" do
expect { expect {
CaseLog.create!(unittype_gn: "Bedsit", described_class.create!(unittype_gn: "Bedsit",
beds: 2, beds: 2,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!(unittype_gn: "Bedsit", described_class.create!(unittype_gn: "Bedsit",
beds: 1, beds: 1,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -841,14 +851,14 @@ RSpec.describe Form, type: :model do
context "Validate local authority" do context "Validate local authority" do
it "Has to be london if rent type london affordable rent" do it "Has to be london if rent type london affordable rent" do
expect { expect {
CaseLog.create!(la: "Ashford", described_class.create!(la: "Ashford",
rent_type: "London Affordable rent", rent_type: "London Affordable rent",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!(la: "Westminster", described_class.create!(la: "Westminster",
rent_type: "London Affordable rent", rent_type: "London Affordable rent",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -859,7 +869,7 @@ RSpec.describe Form, type: :model do
context "For accessibility requirements" do context "For accessibility requirements" do
it "validates that only one option can be selected" do it "validates that only one option can be selected" do
expect { expect {
CaseLog.create!(housingneeds_a: "Yes", described_class.create!(housingneeds_a: "Yes",
housingneeds_b: "Yes", housingneeds_b: "Yes",
rent_type: "London Affordable rent", rent_type: "London Affordable rent",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -869,7 +879,7 @@ RSpec.describe Form, type: :model do
it "validates that only one option a, b, or c can be selected in conjunction with f" do it "validates that only one option a, b, or c can be selected in conjunction with f" do
expect { expect {
CaseLog.create!(housingneeds_a: "Yes", described_class.create!(housingneeds_a: "Yes",
housingneeds_f: "Yes", housingneeds_f: "Yes",
rent_type: "London Affordable rent", rent_type: "London Affordable rent",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -877,7 +887,7 @@ RSpec.describe Form, type: :model do
}.not_to raise_error }.not_to raise_error
expect { expect {
CaseLog.create!(housingneeds_b: "Yes", described_class.create!(housingneeds_b: "Yes",
housingneeds_f: "Yes", housingneeds_f: "Yes",
rent_type: "London Affordable rent", rent_type: "London Affordable rent",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -885,7 +895,7 @@ RSpec.describe Form, type: :model do
}.not_to raise_error }.not_to raise_error
expect { expect {
CaseLog.create!(housingneeds_c: "Yes", described_class.create!(housingneeds_c: "Yes",
housingneeds_f: "Yes", housingneeds_f: "Yes",
rent_type: "London Affordable rent", rent_type: "London Affordable rent",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -893,7 +903,7 @@ RSpec.describe Form, type: :model do
}.not_to raise_error }.not_to raise_error
expect { expect {
CaseLog.create!(housingneeds_g: "Yes", described_class.create!(housingneeds_g: "Yes",
housingneeds_f: "Yes", housingneeds_f: "Yes",
rent_type: "London Affordable rent", rent_type: "London Affordable rent",
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
@ -901,7 +911,7 @@ RSpec.describe Form, type: :model do
}.to raise_error(ActiveRecord::RecordInvalid) }.to raise_error(ActiveRecord::RecordInvalid)
expect { expect {
CaseLog.create!(housingneeds_a: "Yes", described_class.create!(housingneeds_a: "Yes",
housingneeds_b: "Yes", housingneeds_b: "Yes",
housingneeds_f: "Yes", housingneeds_f: "Yes",
rent_type: "London Affordable rent", rent_type: "London Affordable rent",
@ -914,7 +924,7 @@ RSpec.describe Form, type: :model do
context "Validate reason for vacancy" do context "Validate reason for vacancy" do
def check_rsnvac_validation(prevten) def check_rsnvac_validation(prevten)
expect { expect {
CaseLog.create!(rsnvac: "Relet to tenant who occupied same property as temporary accommodation", described_class.create!(rsnvac: "Relet to tenant who occupied same property as temporary accommodation",
prevten: prevten, prevten: prevten,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -923,7 +933,7 @@ RSpec.describe Form, type: :model do
def check_rsnvac_referral_validation(referral) def check_rsnvac_referral_validation(referral)
expect { expect {
CaseLog.create!(rsnvac: "Relet to tenant who occupied same property as temporary accommodation", described_class.create!(rsnvac: "Relet to tenant who occupied same property as temporary accommodation",
referral: referral, referral: referral,
owning_organisation: owning_organisation, owning_organisation: owning_organisation,
managing_organisation: managing_organisation) managing_organisation: managing_organisation)
@ -997,7 +1007,7 @@ RSpec.describe Form, type: :model do
require "date" require "date"
let(:organisation) { FactoryBot.create(:organisation, "Org type": "PRP") } let(:organisation) { FactoryBot.create(:organisation, "Org type": "PRP") }
let!(:case_log) do let!(:case_log) do
CaseLog.create({ described_class.create({
managing_organisation: organisation, managing_organisation: organisation,
owning_organisation: organisation, owning_organisation: organisation,
property_postcode: "M1 1AE", property_postcode: "M1 1AE",
@ -1074,7 +1084,7 @@ RSpec.describe Form, type: :model do
end end
let!(:address_case_log) do let!(:address_case_log) do
CaseLog.create({ described_class.create({
managing_organisation: organisation, managing_organisation: organisation,
owning_organisation: organisation, owning_organisation: organisation,
postcode_known: "Yes", postcode_known: "Yes",
@ -1138,7 +1148,7 @@ RSpec.describe Form, type: :model do
context "rent and charges" do context "rent and charges" do
let!(:case_log) do let!(:case_log) do
CaseLog.create({ described_class.create({
managing_organisation: organisation, managing_organisation: organisation,
owning_organisation: organisation, owning_organisation: organisation,
brent: 5.77, brent: 5.77,
@ -1156,7 +1166,7 @@ RSpec.describe Form, type: :model do
context "household members derived vars" do context "household members derived vars" do
let!(:household_case_log) do let!(:household_case_log) do
CaseLog.create({ described_class.create({
managing_organisation: organisation, managing_organisation: organisation,
owning_organisation: organisation, owning_organisation: organisation,
other_hhmemb: 4, other_hhmemb: 4,

38
spec/models/validations/property_validations_spec.rb

@ -1,59 +1,39 @@
require "rails_helper" require "rails_helper"
require_relative "../../request_helper" require_relative "../../request_helper"
RSpec.describe CaseLog do
let(:owning_organisation) { FactoryBot.create(:organisation) }
let(:managing_organisation) { owning_organisation }
before do
RequestHelper.stub_http_requests
end
describe "#new" do
it "raises an error when offered is present and invalid" do
expect {
described_class.create!(
offered: "random",
owning_organisation: owning_organisation,
managing_organisation: managing_organisation,
)
}.to raise_error(ActiveRecord::RecordInvalid)
end
end
end
RSpec.describe Validations::PropertyValidations do RSpec.describe Validations::PropertyValidations do
let(:subject) { subject_class.new } subject(:property_validator) { property_validator_class.new }
let(:subject_class) { Class.new { include Validations::PropertyValidations } }
let(:property_validator_class) { Class.new { include Validations::PropertyValidations } }
let(:record) { FactoryBot.create(:case_log) } let(:record) { FactoryBot.create(:case_log) }
let(:expected_error) { I18n.t("validations.property.offered.relet_number") } let(:expected_error) { I18n.t("validations.property.offered.relet_number") }
describe "#validate_property_number_of_times_relet" do describe "#validate_property_number_of_times_relet" do
it "does not add an error if the record offered is missing" do it "does not add an error if the record offered is missing" do
record.offered = nil record.offered = nil
subject.validate_property_number_of_times_relet(record) property_validator.validate_property_number_of_times_relet(record)
expect(record.errors).to be_empty expect(record.errors).to be_empty
end end
it "does not add an error if offered is valid (number between 0 and 20)" do it "does not add an error if offered is valid (number between 0 and 20)" do
record.offered = 0 record.offered = 0
subject.validate_property_number_of_times_relet(record) property_validator.validate_property_number_of_times_relet(record)
expect(record.errors).to be_empty expect(record.errors).to be_empty
record.offered = 10 record.offered = 10
subject.validate_property_number_of_times_relet(record) property_validator.validate_property_number_of_times_relet(record)
expect(record.errors).to be_empty expect(record.errors).to be_empty
record.offered = 20 record.offered = 20
subject.validate_property_number_of_times_relet(record) property_validator.validate_property_number_of_times_relet(record)
expect(record.errors).to be_empty expect(record.errors).to be_empty
end end
it "does add an error when offered is invalid" do it "does add an error when offered is invalid" do
record.offered = "invalid" record.offered = "invalid"
subject.validate_property_number_of_times_relet(record) property_validator.validate_property_number_of_times_relet(record)
expect(record.errors).not_to be_empty expect(record.errors).not_to be_empty
expect(record.errors["offered"]).to include(match(expected_error)) expect(record.errors["offered"]).to include(match(expected_error))
record.offered = 21 record.offered = 21
subject.validate_property_number_of_times_relet(record) property_validator.validate_property_number_of_times_relet(record)
expect(record.errors).not_to be_empty expect(record.errors).not_to be_empty
expect(record.errors["offered"]).to include(match(expected_error)) expect(record.errors["offered"]).to include(match(expected_error))
end end

4
spec/presenters/error_summary_full_messages_presenter_spec.rb

@ -1,12 +1,12 @@
require "rails_helper" require "rails_helper"
RSpec.describe ErrorSummaryFullMessagesPresenter do RSpec.describe ErrorSummaryFullMessagesPresenter do
subject { described_class.new(error_messages) } subject(:error_summary_presenter) { described_class.new(error_messages) }
let(:error_messages) { { reset_password_token: %w[expired] } } let(:error_messages) { { reset_password_token: %w[expired] } }
let(:formatted_error_messages) { [[:reset_password_token, "Reset password token expired"]] } let(:formatted_error_messages) { [[:reset_password_token, "Reset password token expired"]] }
it "formats messages to include the attribute name" do it "formats messages to include the attribute name" do
expect(subject.formatted_error_messages).to eq(formatted_error_messages) expect(error_summary_presenter.formatted_error_messages).to eq(formatted_error_messages)
end end
end end

2
spec/requests/auth/passwords_controller_spec.rb

@ -4,7 +4,7 @@ require_relative "../../support/devise"
RSpec.describe Auth::PasswordsController, type: :request do RSpec.describe Auth::PasswordsController, type: :request do
let(:params) { { user: { email: email } } } let(:params) { { user: { email: email } } }
let(:page) { Capybara::Node::Simple.new(response.body) } let(:page) { Capybara::Node::Simple.new(response.body) }
let(:notify_client) { double(Notifications::Client) } let(:notify_client) { instance_double(Notifications::Client) }
before do before do
allow_any_instance_of(DeviseNotifyMailer).to receive(:notify_client).and_return(notify_client) allow_any_instance_of(DeviseNotifyMailer).to receive(:notify_client).and_return(notify_client)

Loading…
Cancel
Save