From e69e4ae488492f50d2ba1a3055e88f4772acb314 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Meny?= Date: Tue, 1 Feb 2022 10:30:54 +0000 Subject: [PATCH] Push fixes #8 --- spec/models/case_log_spec.rb | 10 ++++++ .../local_authority_validations_spec.rb | 35 ++++--------------- 2 files changed, 17 insertions(+), 28 deletions(-) diff --git a/spec/models/case_log_spec.rb b/spec/models/case_log_spec.rb index 2e272cf25..9df765d07 100644 --- a/spec/models/case_log_spec.rb +++ b/spec/models/case_log_spec.rb @@ -33,6 +33,16 @@ RSpec.describe CaseLog do }.to raise_error(ActiveRecord::RecordInvalid) end + it "raises an error when previous_postcode is present and invalid" do + expect { + described_class.create!( + previous_postcode: "invalid_postcode", + owning_organisation: owning_organisation, + managing_organisation: managing_organisation, + ) + }.to raise_error(ActiveRecord::RecordInvalid, /#{I18n.t("validations.postcode")}/) + end + it "validates age is a number" do expect { described_class.create!( diff --git a/spec/models/validations/local_authority_validations_spec.rb b/spec/models/validations/local_authority_validations_spec.rb index d5cb1b59b..dc5bebe3d 100644 --- a/spec/models/validations/local_authority_validations_spec.rb +++ b/spec/models/validations/local_authority_validations_spec.rb @@ -1,54 +1,33 @@ require "rails_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 previous_postcode is present and invalid" do - expect { - described_class.create!( - previous_postcode: "invalid_postcode", - owning_organisation: owning_organisation, - managing_organisation: managing_organisation, - ) - }.to raise_error(ActiveRecord::RecordInvalid, /#{I18n.t("validations.postcode")}/) - end - end -end RSpec.describe Validations::LocalAuthorityValidations do - let(:subject) { subject_class.new } - let(:subject_class) { Class.new { include Validations::LocalAuthorityValidations } } + subject(:local_auth_validator) { validator_class.new } + + let(:validator_class) { Class.new { include Validations::LocalAuthorityValidations } } let(:record) { FactoryBot.create(:case_log) } describe "#validate_previous_accommodation_postcode" do it "does not add an error if the record previous_postcode is missing" do record.previous_postcode = nil - subject.validate_previous_accommodation_postcode(record) + local_auth_validator.validate_previous_accommodation_postcode(record) expect(record.errors).to be_empty end it "does not add an error if the record previous_postcode is valid (uppercase space)" do record.previous_postcode = "M1 1AE" - subject.validate_previous_accommodation_postcode(record) + local_auth_validator.validate_previous_accommodation_postcode(record) expect(record.errors).to be_empty end it "does not add an error if the record previous_postcode is valid (lowercase no space)" do record.previous_postcode = "m11ae" - subject.validate_previous_accommodation_postcode(record) + local_auth_validator.validate_previous_accommodation_postcode(record) expect(record.errors).to be_empty end it "does add an error when the postcode is invalid" do record.previous_postcode = "invalid" - subject.validate_previous_accommodation_postcode(record) + local_auth_validator.validate_previous_accommodation_postcode(record) expect(record.errors).not_to be_empty expect(record.errors["previous_postcode"]).to include(match I18n.t("validations.postcode")) end