Browse Source

Spec update

pull/578/head
baarkerlounger 3 years ago
parent
commit
47ed46efe4
  1. 148
      spec/models/validations/tenancy_validations_spec.rb
  2. 3
      spec/requests/case_logs_controller_spec.rb

148
spec/models/validations/tenancy_validations_spec.rb

@ -4,7 +4,7 @@ RSpec.describe Validations::TenancyValidations do
subject(:tenancy_validator) { validator_class.new } subject(:tenancy_validator) { validator_class.new }
let(:validator_class) { Class.new { include Validations::TenancyValidations } } let(:validator_class) { Class.new { include Validations::TenancyValidations } }
let(:record) { FactoryBot.create(:case_log) } let(:record) { FactoryBot.create(:case_log, startdate: Time.zone.local(2021, 5, 1)) }
describe "fixed term tenancy validations" do describe "fixed term tenancy validations" do
context "when fixed term tenancy" do context "when fixed term tenancy" do
@ -62,44 +62,134 @@ RSpec.describe Validations::TenancyValidations do
end end
end end
context "when type of tenancy is secure" do context "when the collection start year is before 2022" do
let(:expected_error) { I18n.t("validations.tenancy.length.secure") } context "when type of tenancy is secure" do
let(:expected_error) { I18n.t("validations.tenancy.length.secure") }
before { record.tenancy = 1 } before { record.tenancy = 1 }
context "when tenancy length is greater than 1" do context "when tenancy length is greater than 1" do
it "adds an error" do it "adds an error" do
record.tenancylength = 1 record.tenancylength = 1
tenancy_validator.validate_fixed_term_tenancy(record) tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to include(match(expected_error)) expect(record.errors["tenancylength"]).to include(match(expected_error))
expect(record.errors["tenancy"]).to include(match(expected_error)) expect(record.errors["tenancy"]).to include(match(expected_error))
end
end end
end
context "when tenancy length is less than 100" do context "when tenancy length is less than 100" do
it "adds an error" do it "adds an error" do
record.tenancylength = 100 record.tenancylength = 100
tenancy_validator.validate_fixed_term_tenancy(record) tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to include(match(expected_error)) expect(record.errors["tenancylength"]).to include(match(expected_error))
expect(record.errors["tenancy"]).to include(match(expected_error)) expect(record.errors["tenancy"]).to include(match(expected_error))
end
end
context "when tenancy length is between 2-99" do
it "does not add an error" do
record.tenancylength = 3
tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to be_empty
expect(record.errors["tenancy"]).to be_empty
end
end
context "when tenancy length has not been answered" do
it "does not add an error" do
record.tenancylength = nil
tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to be_empty
expect(record.errors["tenancy"]).to be_empty
end
end end
end end
end
context "when tenancy length is between 2-99" do context "when the collection start year is 2022 or later" do
it "does not add an error" do let(:record) { FactoryBot.create(:case_log, startdate: Time.zone.local(2022, 5, 1)) }
record.tenancylength = 3
tenancy_validator.validate_fixed_term_tenancy(record) context "when type of tenancy is Secure - fixed term" do
expect(record.errors["tenancylength"]).to be_empty let(:expected_error) { I18n.t("validations.tenancy.length.secure") }
expect(record.errors["tenancy"]).to be_empty
before { record.tenancy = 6 }
context "when tenancy length is greater than 1" do
it "adds an error" do
record.tenancylength = 1
tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to include(match(expected_error))
expect(record.errors["tenancy"]).to include(match(expected_error))
end
end
context "when tenancy length is less than 100" do
it "adds an error" do
record.tenancylength = 100
tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to include(match(expected_error))
expect(record.errors["tenancy"]).to include(match(expected_error))
end
end
context "when tenancy length is between 2-99" do
it "does not add an error" do
record.tenancylength = 3
tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to be_empty
expect(record.errors["tenancy"]).to be_empty
end
end
context "when tenancy length has not been answered" do
it "does not add an error" do
record.tenancylength = nil
tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to be_empty
expect(record.errors["tenancy"]).to be_empty
end
end end
end end
context "when tenancy length has not been answered" do context "when type of tenancy is Secure - lifetime" do
it "does not add an error" do let(:expected_error) { I18n.t("validations.tenancy.length.secure") }
record.tenancylength = nil
tenancy_validator.validate_fixed_term_tenancy(record) before { record.tenancy = 7 }
expect(record.errors["tenancylength"]).to be_empty
expect(record.errors["tenancy"]).to be_empty context "when tenancy length is greater than 1" do
it "adds an error" do
record.tenancylength = 1
tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to include(match(expected_error))
expect(record.errors["tenancy"]).to include(match(expected_error))
end
end
context "when tenancy length is less than 100" do
it "adds an error" do
record.tenancylength = 100
tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to include(match(expected_error))
expect(record.errors["tenancy"]).to include(match(expected_error))
end
end
context "when tenancy length is between 2-99" do
it "does not add an error" do
record.tenancylength = 3
tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to be_empty
expect(record.errors["tenancy"]).to be_empty
end
end
context "when tenancy length has not been answered" do
it "does not add an error" do
record.tenancylength = nil
tenancy_validator.validate_fixed_term_tenancy(record)
expect(record.errors["tenancylength"]).to be_empty
expect(record.errors["tenancy"]).to be_empty
end
end end
end end
end end

3
spec/requests/case_logs_controller_spec.rb

@ -232,6 +232,7 @@ RSpec.describe CaseLogsController, type: :request do
owning_organisation: organisation, owning_organisation: organisation,
mrcdate: Time.zone.local(2022, 2, 1), mrcdate: Time.zone.local(2022, 2, 1),
startdate: Time.zone.local(2022, 12, 1), startdate: Time.zone.local(2022, 12, 1),
tenancy: 6,
managing_organisation: organisation) managing_organisation: organisation)
end end
@ -260,6 +261,7 @@ RSpec.describe CaseLogsController, type: :request do
owning_organisation: organisation, owning_organisation: organisation,
mrcdate: Time.zone.local(2022, 2, 1), mrcdate: Time.zone.local(2022, 2, 1),
startdate: Time.zone.local(2022, 12, 1), startdate: Time.zone.local(2022, 12, 1),
tenancy: 6,
managing_organisation: organisation) managing_organisation: organisation)
end end
let!(:case_log_2022_in_progress) do let!(:case_log_2022_in_progress) do
@ -267,6 +269,7 @@ RSpec.describe CaseLogsController, type: :request do
owning_organisation: organisation, owning_organisation: organisation,
mrcdate: Time.zone.local(2022, 2, 1), mrcdate: Time.zone.local(2022, 2, 1),
startdate: Time.zone.local(2022, 12, 1), startdate: Time.zone.local(2022, 12, 1),
tenancy: 6,
managing_organisation: organisation) managing_organisation: organisation)
end end

Loading…
Cancel
Save