Browse Source

Add deposit over soft max validation

pull/1102/head
Kat 3 years ago
parent
commit
6adb0c6516
  1. 6
      app/models/validations/sales/soft_validations.rb
  2. 4
      spec/models/form_handler_spec.rb
  3. 32
      spec/models/validations/sales/soft_validations_spec.rb

6
app/models/validations/sales/soft_validations.rb

@ -30,4 +30,10 @@ module Validations::Sales::SoftValidations
def savings_over_soft_max?
savings && savings > 100_000
end
def deposit_over_soft_max?
return unless savings && deposit
deposit > savings * 4 / 3
end
end

4
spec/models/form_handler_spec.rb

@ -52,14 +52,14 @@ RSpec.describe FormHandler do
it "is able to load a current sales form" do
form = form_handler.get_form("current_sales")
expect(form).to be_a(Form)
expect(form.pages.count).to eq(107)
expect(form.pages.count).to eq(109)
expect(form.name).to eq("2022_2023_sales")
end
it "is able to load a previous sales form" do
form = form_handler.get_form("previous_sales")
expect(form).to be_a(Form)
expect(form.pages.count).to eq(107)
expect(form.pages.count).to eq(109)
expect(form.name).to eq("2021_2022_sales")
end
end

32
spec/models/validations/sales/soft_validations_spec.rb

@ -223,4 +223,36 @@ RSpec.describe Validations::Sales::SoftValidations do
end
end
end
describe "deposit amount validations" do
context "when validating soft max" do
it "returns false if no savings is given" do
record.savings = nil
record.deposit = 8_001
expect(record)
.not_to be_deposit_over_soft_max
end
it "returns false if no deposit is given" do
record.deposit = nil
record.savings = 6_000
expect(record)
.not_to be_deposit_over_soft_max
end
it "returns true if deposit is more than 4/3 of savings" do
record.deposit = 8_001
record.savings = 6_000
expect(record)
.to be_deposit_over_soft_max
end
it "returns fals if deposit is less than 4/3 of savings" do
record.deposit = 7_999
record.savings = 6_000
expect(record)
.not_to be_deposit_over_soft_max
end
end
end
end

Loading…
Cancel
Save