Browse Source

CLDC-3676: lettings property validations

CLDC-3676-remove-all-pre-2025-validations
samyou-softwire 2 weeks ago
parent
commit
d50af5998d
  1. 3
      app/models/validations/property_validations.rb
  2. 44
      spec/models/validations/property_validations_spec.rb

3
app/models/validations/property_validations.rb

@ -70,7 +70,6 @@ module Validations::PropertyValidations
# see also: this validation in sales/property_validations.rb # see also: this validation in sales/property_validations.rb
def validate_la_in_england(record) def validate_la_in_england(record)
return unless record.form.start_year_2025_or_later?
return unless record.la return unless record.la
return if record.la.in?(LocalAuthority.england.pluck(:code)) return if record.la.in?(LocalAuthority.england.pluck(:code))
@ -94,7 +93,7 @@ module Validations::PropertyValidations
# see also: this validation in sales/property_validations.rb # see also: this validation in sales/property_validations.rb
def validate_la_is_active(record) def validate_la_is_active(record)
return unless record.form.start_year_2025_or_later? && record.startdate.present? return unless record.startdate.present?
return unless record.la return unless record.la
la = LocalAuthority.england.find_by(code: record.la) la = LocalAuthority.england.find_by(code: record.la)

44
spec/models/validations/property_validations_spec.rb

@ -210,11 +210,6 @@ RSpec.describe Validations::PropertyValidations do
end end
describe "#validate_la_in_england" do describe "#validate_la_in_england" do
context "with a log on or after 2025" do
before do
allow(log.form).to receive(:start_year_2025_or_later?).and_return true
end
context "and the local authority is not in England for general needs log" do context "and the local authority is not in England for general needs log" do
let(:log) { build(:lettings_log, la: "S12000019", needstype: 1) } let(:log) { build(:lettings_log, la: "S12000019", needstype: 1) }
@ -260,32 +255,12 @@ RSpec.describe Validations::PropertyValidations do
end end
end end
context "with a log before 2025" do
before do
allow(log.form).to receive(:start_year_2025_or_later?).and_return false
end
context "and the local authority is not in England" do
let(:log) { build(:lettings_log, la: "S12000019") }
it "does not add an error" do
property_validator.validate_la_in_england(log)
expect(log.errors["la"]).to be_empty
expect(log.errors["postcode_full"]).to be_empty
expect(log.errors["uprn"]).to be_empty
expect(log.errors["uprn_selection"]).to be_empty
end
end
end
end
describe "#validate_la_is_active" do describe "#validate_la_is_active" do
let(:la_ecode_active) { "E09000033" } let(:la_ecode_active) { "E09000033" }
let(:la_ecode_inactive) { "E07000156" } let(:la_ecode_inactive) { "E07000156" }
let(:local_authority_active) { LocalAuthority.find_by(code: la_ecode_active) } let(:local_authority_active) { LocalAuthority.find_by(code: la_ecode_active) }
let(:local_authority_inactive) { LocalAuthority.find_by(code: la_ecode_inactive) } let(:local_authority_inactive) { LocalAuthority.find_by(code: la_ecode_inactive) }
context "with a log on or after 2025" do
before do before do
allow(log.form).to receive(:start_year_2025_or_later?).and_return true allow(log.form).to receive(:start_year_2025_or_later?).and_return true
end end
@ -421,23 +396,4 @@ RSpec.describe Validations::PropertyValidations do
end end
end end
end end
context "with a log before 2025" do
before do
allow(log.form).to receive(:start_year_2025_or_later?).and_return false
end
context "and the local authority is inactive" do
let(:log) { build(:lettings_log, :completed, la: la_ecode_inactive) }
it "does not add an error" do
property_validator.validate_la_is_active(log)
expect(log.errors["la"]).to be_empty
expect(log.errors["postcode_full"]).to be_empty
expect(log.errors["uprn"]).to be_empty
expect(log.errors["uprn_selection"]).to be_empty
end
end
end
end
end end

Loading…
Cancel
Save