Class: DocValidator::Cnpj

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

Class Method Summary collapse

Class Method Details

.format(cnpj) ⇒ Object



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

def self.format(cnpj)
  cnpj.gsub(/(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})/, '\1.\2.\3/\4-\5')
end

.mask(cnpj) ⇒ Object



16
17
18
19
20
21
# File 'lib/doc_validator/cnpj.rb', line 16

def self.mask(cnpj)
  cnpj = cnpj.gsub(/\D/, '')
  return cnpj unless cnpj.length == 14

  cnpj.gsub(/(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})/, '**.*\2.\3/\4-**')
end

.valid?(cnpj) ⇒ Boolean

Returns:

  • (Boolean)


5
6
7
8
9
10
# File 'lib/doc_validator/cnpj.rb', line 5

def self.valid?(cnpj)
  cnpj = cnpj.gsub(/\D/, '')
  return false if cnpj.length != 14

  true
end