Class: LicenseValidator::Validations::StateAz

Inherits:
Base
  • Object
show all
Defined in:
lib/license_validator/validations/state_az.rb

Instance Attribute Summary

Attributes inherited from Base

#driver, #errors, #infos, #warnings

Instance Method Summary collapse

Methods inherited from Base

human_attribute_name, #initialize, lookup_ancestors, #read_attribute_for_validation, #validation_results

Constructor Details

This class inherits a constructor from LicenseValidator::Validations::Base

Instance Method Details

#validateObject

See Also:

  • super


7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/license_validator/validations/state_az.rb', line 7

def validate
  super

  if driver.last_name.blank?
    errors.add(:last_name, 'Last name required for AZ.')
  end

  if driver.first_name.blank?
    errors.add(:first_name, 'First name required for AZ.')
  end

  if driver.dob.blank?
    errors.add(:dob, 'D.O.B. required for AZ.')
  end

  lic_num = driver.license_num

  return if lic_num.match?(/\A[a-z]\d{7,8}\z/i)

  return if lic_num.match?(/\A\d{9}\z/i)

  errors.add(:license_num, 'License number requires 1 alphabetic, 7-8 numeric or 9 numeric for AZ.')
end