Class: CnpjValidator::Cnpj

Inherits:
Object
  • Object
show all
Defined in:
lib/cnpj_validator/cnpj.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(number) ⇒ Cnpj

Returns a new instance of Cnpj.



8
9
10
# File 'lib/cnpj_validator/cnpj.rb', line 8

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

Instance Attribute Details

#numberObject (readonly)

Returns the value of attribute number.



6
7
8
# File 'lib/cnpj_validator/cnpj.rb', line 6

def number
  @number
end

Class Method Details

.valid?(number) ⇒ Boolean

Returns:

  • (Boolean)


2
3
4
# File 'lib/cnpj_validator/cnpj.rb', line 2

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

Instance Method Details

#digitsObject



12
13
14
# File 'lib/cnpj_validator/cnpj.rb', line 12

def digits
  @digits ||= number.scan(/\d/).map(&:to_i)
end

#plainObject



16
17
18
# File 'lib/cnpj_validator/cnpj.rb', line 16

def plain
  @plain ||= digits.join
end

#valid?Boolean

Returns:

  • (Boolean)


20
21
22
# File 'lib/cnpj_validator/cnpj.rb', line 20

def valid?
  formatted? && !black_listed? && digits_matches?
end