UNPKG

@dohasys/lib-javascript-bra-cpf-cnpj

Version:

Uma lib portando o código do repositório https://github.com/carvalhoviniciusluiz/cpf-cnpj-validator de typescript para javascript.

65 lines (52 loc) 2.12 kB
const { cnpj } = require('../src') describe('CNPJ', () => { test('números de listas negras', () => { expect(cnpj.isValid('00000000000000')).toBeFalsy() expect(cnpj.isValid('11111111111111')).toBeFalsy() expect(cnpj.isValid('22222222222222')).toBeFalsy() expect(cnpj.isValid('33333333333333')).toBeFalsy() expect(cnpj.isValid('44444444444444')).toBeFalsy() expect(cnpj.isValid('55555555555555')).toBeFalsy() expect(cnpj.isValid('66666666666666')).toBeFalsy() expect(cnpj.isValid('77777777777777')).toBeFalsy() expect(cnpj.isValid('88888888888888')).toBeFalsy() expect(cnpj.isValid('99999999999999')).toBeFalsy() }) test('rejeita valores falsos', () => { expect(cnpj.isValid('')).toBeFalsy() expect(cnpj.isValid(null)).toBeFalsy() expect(cnpj.isValid(undefined)).toBeFalsy() }) test('valida strings formatadas', () => { expect(cnpj.isValid('54.550.752/0001-55')).toBeTruthy() }) test('valida strings não formatadas', () => { expect(cnpj.isValid('54550752000155')).toBeTruthy() }) test('valida strings confusas', () => { expect(cnpj.isValid('54550[752#0001..$55')).toBeTruthy() }) test('valida cadeias de caracteres', () => { expect(cnpj.isValid('54550[752#0001..$55', true)).toBeFalsy() expect(cnpj.isValid('54.550.752/0001-55', true)).toBeTruthy() expect(cnpj.isValid('54550752000155', true)).toBeTruthy() }) test('retorna número não formatado', () => { var number = cnpj.strip('54550[752#0001..$55') expect(number).toEqual('54550752000155') }) test('retorna número formatado', () => { var number = cnpj.format('54550752000155') expect(number).toEqual('54.550.752/0001-55') }) test('gera número formatado', () => { var number = cnpj.generate(true) expect(number).toMatch(/^(\d{2}).(\d{3}).(\d{3})\/(\d{4})-(\d{2})$/) expect(cnpj.isValid(number)).toBeTruthy() }) test('gera número não formatado', () => { var number = cnpj.generate() expect(number).toMatch(/^(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})$/) expect(cnpj.isValid(number)).toBeTruthy() }) })