diff --git a/app/models/validations/local_authority_validations.rb b/app/models/validations/local_authority_validations.rb
index a7b3ed30d..72846f4e8 100644
--- a/app/models/validations/local_authority_validations.rb
+++ b/app/models/validations/local_authority_validations.rb
@@ -8,4 +8,50 @@ module Validations::LocalAuthorityValidations
record.errors.add :ppostcode_full, error_message
end
end
+
+ LONDON_BOROUGHS = %w[E09000001
+ E09000002
+ E09000003
+ E09000004
+ E09000005
+ E09000006
+ E09000007
+ E09000008
+ E09000009
+ E09000010
+ E09000011
+ E09000012
+ E09000013
+ E09000014
+ E09000015
+ E09000016
+ E09000017
+ E09000018
+ E09000019
+ E09000020
+ E09000021
+ E09000022
+ E09000023
+ E09000024
+ E09000025
+ E09000026
+ E09000027
+ E09000028
+ E09000029
+ E09000030
+ E09000031
+ E09000032
+ E09000033].freeze
+ def validate_la(record)
+ if record.la.present? && !LONDON_BOROUGHS.include?(record.la) && record.is_london_rent?
+ record.errors.add :la, I18n.t("validations.property.la.london_rent")
+ if record.postcode_known? && record.postcode_full.present?
+ record.errors.add :postcode_full, I18n.t("validations.property.la.london_rent_postcode")
+ end
+ end
+
+ if record.la_known? && record.la.blank?
+ record.errors.add :la, I18n.t("validations.property.la.la_known")
+ end
+ end
end
diff --git a/app/models/validations/property_validations.rb b/app/models/validations/property_validations.rb
index 720cad20d..050cdbd37 100644
--- a/app/models/validations/property_validations.rb
+++ b/app/models/validations/property_validations.rb
@@ -21,52 +21,6 @@ module Validations::PropertyValidations
end
end
- LONDON_BOROUGHS = %w[E09000001
- E09000002
- E09000003
- E09000004
- E09000005
- E09000006
- E09000007
- E09000008
- E09000009
- E09000010
- E09000011
- E09000012
- E09000013
- E09000014
- E09000015
- E09000016
- E09000017
- E09000018
- E09000019
- E09000020
- E09000021
- E09000022
- E09000023
- E09000024
- E09000025
- E09000026
- E09000027
- E09000028
- E09000029
- E09000030
- E09000031
- E09000032
- E09000033].freeze
- def validate_la(record)
- if record.la.present? && !LONDON_BOROUGHS.include?(record.la) && record.is_london_rent?
- record.errors.add :la, I18n.t("validations.property.la.london_rent")
- if record.postcode_known? && record.postcode_full.present?
- record.errors.add :postcode_full, I18n.t("validations.property.la.london_rent_postcode")
- end
- end
-
- if record.la_known? && record.la.blank?
- record.errors.add :la, I18n.t("validations.property.la.la_known")
- end
- end
-
REFERRAL_INVALID_TMP = [8, 10, 12, 13, 14, 15].freeze
def validate_rsnvac(record)
if !record.first_time_property_let_as_social_housing? && record.has_first_let_vacancy_reason?
diff --git a/spec/helpers/details_table_helper_spec.rb b/spec/helpers/details_table_helper_spec.rb
index 202bace62..f0df11c14 100644
--- a/spec/helpers/details_table_helper_spec.rb
+++ b/spec/helpers/details_table_helper_spec.rb
@@ -24,7 +24,7 @@ RSpec.describe DetailsTableHelper do
end
it "displays the string wrapped in an unordered list with the correct classes" do
- expect(details).to eq("
- Camden
\n
- Westminster
\n
- Bristol
")
+ expect(details).to eq("")
end
end
end
diff --git a/spec/models/validations/local_authority_validations_spec.rb b/spec/models/validations/local_authority_validations_spec.rb
index 6ece1932c..a2394f49d 100644
--- a/spec/models/validations/local_authority_validations_spec.rb
+++ b/spec/models/validations/local_authority_validations_spec.rb
@@ -35,4 +35,47 @@ RSpec.describe Validations::LocalAuthorityValidations do
expect(record.errors["ppostcode_full"]).to include(match I18n.t("validations.postcode"))
end
end
+
+ describe "#validate_la" do
+ context "when the rent type is London affordable" do
+ let(:expected_error) { I18n.t("validations.property.la.london_rent") }
+
+ it "validates that the local authority is in London" do
+ record.la = "E07000105"
+ record.rent_type = 2
+ local_auth_validator.validate_la(record)
+ expect(record.errors["la"]).to include(match(expected_error))
+ expect(record.errors["postcode_full"]).to be_empty
+ end
+
+ it "expects that the local authority is in London" do
+ record.la = "E09000033"
+ record.rent_type = 2
+ local_auth_validator.validate_la(record)
+ expect(record.errors["la"]).to be_empty
+ end
+
+ context "when the la has been derived from a known postcode" do
+ let(:expected_error) { I18n.t("validations.property.la.london_rent_postcode") }
+
+ it "also adds an error to the postcode field" do
+ record.la = "E07000105"
+ record.rent_type = 2
+ record.postcode_known = 1
+ record.postcode_full = "BN18 7TR"
+ local_auth_validator.validate_la(record)
+ expect(record.errors["postcode_full"]).to include(match(expected_error))
+ end
+ end
+ end
+
+ context "when previous la is known" do
+ it "la has to be provided" do
+ record.la_known = 1
+ local_auth_validator.validate_la(record)
+ expect(record.errors["la"])
+ .to include(match I18n.t("validations.property.la.la_known"))
+ end
+ end
+ end
end
diff --git a/spec/models/validations/property_validations_spec.rb b/spec/models/validations/property_validations_spec.rb
index 08052ee7e..5d8b6f51e 100644
--- a/spec/models/validations/property_validations_spec.rb
+++ b/spec/models/validations/property_validations_spec.rb
@@ -147,49 +147,6 @@ RSpec.describe Validations::PropertyValidations do
end
end
- describe "#validate_la" do
- context "when the rent type is London affordable" do
- let(:expected_error) { I18n.t("validations.property.la.london_rent") }
-
- it "validates that the local authority is in London" do
- record.la = "E07000105"
- record.rent_type = 2
- property_validator.validate_la(record)
- expect(record.errors["la"]).to include(match(expected_error))
- expect(record.errors["postcode_full"]).to be_empty
- end
-
- it "expects that the local authority is in London" do
- record.la = "E09000033"
- record.rent_type = 2
- property_validator.validate_la(record)
- expect(record.errors["la"]).to be_empty
- end
-
- context "when the la has been derived from a known postcode" do
- let(:expected_error) { I18n.t("validations.property.la.london_rent_postcode") }
-
- it "also adds an error to the postcode field" do
- record.la = "E07000105"
- record.rent_type = 2
- record.postcode_known = 1
- record.postcode_full = "BN18 7TR"
- property_validator.validate_la(record)
- expect(record.errors["postcode_full"]).to include(match(expected_error))
- end
- end
- end
-
- context "when previous la is known" do
- it "la has to be provided" do
- record.la_known = 1
- property_validator.validate_la(record)
- expect(record.errors["la"])
- .to include(match I18n.t("validations.property.la.la_known"))
- end
- end
- end
-
describe "#validate_unitletas" do
context "when the property has not been let before" do
it "validates that no previous let type is provided" do