Class: ActiveModel::Validations::NinoValidatorUK
- Inherits:
-
Object
- Object
- ActiveModel::Validations::NinoValidatorUK
- Defined in:
- lib/active_validators/active_model/validations/nino_validator.rb
Overview
The National Insurance number is a number used in the United Kingdom. The format of the number is two prefix letters, six digits, and one suffix letter. The example used is typically AB123456C. Where AB - prefix, 123456 - number, C - suffix. More details: en.wikipedia.org/wiki/National_Insurance_number
Instance Method Summary collapse
-
#initialize(value) ⇒ NinoValidatorUK
constructor
A new instance of NinoValidatorUK.
- #valid? ⇒ Boolean
Constructor Details
#initialize(value) ⇒ NinoValidatorUK
Returns a new instance of NinoValidatorUK.
14 15 16 17 18 19 20 21 |
# File 'lib/active_validators/active_model/validations/nino_validator.rb', line 14 def initialize(value) @nino = value.gsub(/\s/, '').upcase # Remove spaces (they may be) and make text to be same. @first_char = @nino[0] @second_char = @nino[1] @prefix = @nino[0..1] @number = @nino[2..7] @suffix = @nino[-1] end |
Instance Method Details
#valid? ⇒ Boolean
23 24 25 26 |
# File 'lib/active_validators/active_model/validations/nino_validator.rb', line 23 def valid? size_is?(9) && first_char_valid? && second_char_valid? && prefix_valid? && prefix_not_allocated? && prefix_not_administrative_number? && number_valid? && suffix_valid? end |