Class: Imei::ImeiValidator

Inherits:
Object
  • Object
show all
Defined in:
lib/imei/imei_validator.rb

Constant Summary collapse

REGEX =
/\A(\b\d{16}\b|\b\d{15}\b)\z/

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(number) ⇒ ImeiValidator

Returns a new instance of ImeiValidator.



10
11
12
# File 'lib/imei/imei_validator.rb', line 10

def initialize(number)
  @number = number.to_s
end

Instance Attribute Details

#numberObject

Returns the value of attribute number.



2
3
4
# File 'lib/imei/imei_validator.rb', line 2

def number
  @number
end

Class Method Details

.valid?(number) ⇒ Boolean

Returns:

  • (Boolean)


6
7
8
# File 'lib/imei/imei_validator.rb', line 6

def self.valid?(number)
  new(number).valid?
end

Instance Method Details

#valid?Boolean

Returns:

  • (Boolean)


19
20
21
22
# File 'lib/imei/imei_validator.rb', line 19

def valid?
  return unless [15, 16].include?(number.size)
  ((rounded_sum - sum_numbers) == last_digit)
end