ministryofjustice/Claim-for-Crown-Court-Defence

View on GitHub
app/validators/interim_claim_info_validator.rb

Summary

Maintainability
A
0 mins
Test Coverage
A
100%
class InterimClaimInfoValidator < BaseValidator
  def self.fields
    %i[warrant_issued_date warrant_executed_date]
  end

  def validate_warrant_issued_date
    return unless @record.warrant_fee_paid?
    validate_presence(:warrant_issued_date, :blank)
    validate_on_or_after(Settings.earliest_permitted_date, :warrant_issued_date, :check_not_too_far_in_past)
    return if @record.warrant_issued_date.nil?
    validate_not_in_future(:warrant_issued_date)
  end

  def validate_warrant_executed_date
    return unless @record.warrant_fee_paid?
    validate_presence(:warrant_executed_date, :blank)
    validate_on_or_after(@record.warrant_issued_date, :warrant_executed_date, :warrant_executed_before_issued)
    validate_on_or_after(Settings.earliest_permitted_date, :warrant_executed_date, :check_not_too_far_in_past)
    return if @record.warrant_executed_date.nil?
    validate_not_in_future(:warrant_executed_date)
  end
end