Class: TinValid::AustriaTin

Inherits:
Object
  • Object
show all
Defined in:
lib/tin_valid/austria_tin.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(tin:) ⇒ AustriaTin

Returns a new instance of AustriaTin.



5
6
7
# File 'lib/tin_valid/austria_tin.rb', line 5

def initialize(tin:)
  @tin = tin
end

Instance Attribute Details

#tinObject (readonly)

Returns the value of attribute tin.



9
10
11
# File 'lib/tin_valid/austria_tin.rb', line 9

def tin
  @tin
end

Instance Method Details

#normalizedObject



18
19
20
# File 'lib/tin_valid/austria_tin.rb', line 18

def normalized
  @normalized ||= tin.to_s.strip.tr("-/", "")
end

#valid?Boolean

Returns:

  • (Boolean)


11
12
13
14
15
16
# File 'lib/tin_valid/austria_tin.rb', line 11

def valid?
  return false unless MATCHER.match?(normalized)
  return false if %w[000000000 123456789].include?(normalized)

  normalized[-1] == check
end