Biblioteca Erlang
O que a biblioteca Erlang implementa do contrato compartilhado, o que falha e o que fazer agora.
- Repositório
- github.com/brazilian-utils/erlang
48dd38d - Pacote
- brutils
Instalação
{deps, [brutils]}. % rebar.configErlang implementa 29 das 182 funções do contrato e 12.5% das funções principais. 340 casos compartilhados passam e 352 falham.
Comparação com as outras bibliotecas
| Biblioteca | Funções principais | Implementadas | Casos que passam |
|---|---|---|---|
| JavaScript, biblioteca | 100% | 180/182 | 5033 |
| Rust, biblioteca | 37.5% | 132/182 | 1732 |
| Go, biblioteca | 35% | 136/182 | 2081 |
| .NET, biblioteca | 32.5% | 133/182 | 2194 |
| Ruby, biblioteca | 27.5% | 133/182 | 2589 |
| Python, biblioteca | 17.5% | 40/182 | 500 |
| Erlang | 12.5% | 29/182 | 340 |
O que fazer agora
A lista começa pelas funções que falham, depois assinaturas erradas, depois funções principais que faltam, depois o resto. Em cada grupo, vêm primeiro as funções implementadas por mais bibliotecas, porque há mais código de onde portar. Cada item também é uma issue no repositório da biblioteca.
23 funções falham
Ver as 23 funções que falham
| Função | Situação | Detalhes | Implementada por |
|---|---|---|---|
CEP: Formatarcep.format (principal) | falha | 13 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
CEP: Validarcep.isValid (principal) | falha | 10 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
CNH: Validarcnh.isValid (principal) | falha | 5 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
CNPJ: Formatarcnpj.format (principal) | falha | 36 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
CNPJ: Validarcnpj.isValid (principal) | falha | 4 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
CPF: Formatarcpf.format (principal) | falha | 28 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
CPF: Validarcpf.isValid (principal) | falha | 5 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Placa de veículo: Convert to mercosullicensePlate.convertToMercosul (principal) | falha | 8 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Placa de veículo: FormatarlicensePlate.format (principal) | falha | 17 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Placa de veículo: GerarlicensePlate.generate (principal) | falha | 4 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Placa de veículo: Get formatlicensePlate.getFormat (principal) | falha | 11 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Placa de veículo: ValidarlicensePlate.isValid (principal) | falha | 17 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Passaporte: Formatarpassport.format | falha | 17 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Passaporte: Validarpassport.isValid | falha | 4 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Telefone: Formatarphone.format (principal) | falha | 15 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Telefone: Gerarphone.generate (principal) | falha | 3 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
PIS/PASEP: Formatarpis.format (principal) | falha | 54 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
PIS/PASEP: Validarpis.isValid (principal) | falha | 6 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
RENAVAM: Validarrenavam.isValid (principal) | falha | 7 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Título de eleitor: FormatarvoterId.format (principal) | falha | 26 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Título de eleitor: ValidarvoterId.isValid (principal) | falha | 18 casos falham | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
CNPJ: Gerarcnpj.generate (principal) | falha | 5 casos falham | 5: JavaScript, Python, Go, Ruby, .NET |
Telefone: Validarphone.isValid (principal) | falha | 39 casos falham | 5: JavaScript, Go, Ruby, Rust, .NET |
153 funções estão faltando
Ver as 153 funções que faltam
| Função | Situação | Implementada por |
|---|---|---|
Moeda (real): Escrever por extensocurrency.convertToWords (principal) | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Moeda (real): Formatarcurrency.format (principal) | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
E-mail: Validaremail.isValid (principal) | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Natureza jurídica: ValidarlegalNature.isValid (principal) | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Natureza jurídica: ListarlegalNature.list (principal) | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Processo judicial: FormatarlegalProcess.format (principal) | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Processo judicial: GerarlegalProcess.generate (principal) | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Processo judicial: ValidarlegalProcess.isValid (principal) | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Boleto: Validarboleto.isValid (principal) | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CEP: Get address infocep.getAddressInfo (principal) | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Datas e feriados: Is holidaydate.isHoliday (principal) | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Natureza jurídica: Get descriptionlegalNature.getDescription (principal) | ausente | 5: Python, Go, Ruby, Rust, .NET |
CEP: Get info by addresscep.getInfoByAddress (principal) | ausente | 4: JavaScript, Go, Rust, .NET |
Municípios: Get code by namemunicipality.getCodeByName (principal) | ausente | 1: JavaScript |
Datas e feriados: Escrever por extensodate.convertToWords | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Estados (UF): Get code by namestate.getCodeByName | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
Estados (UF): Get name by codestate.getNameByCode | ausente | 6: JavaScript, Python, Go, Ruby, Rust, .NET |
DDD: List by stateareaCode.listByState | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Bancos: Get by codebank.getByCode | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Bancos: Get by ispbbank.getByIspb | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Bancos: Listarbank.list | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Conta bancária: ValidarbankAccount.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Boleto: Formatarboleto.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Boleto: Gerarboleto.generate | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Boleto: Interpretarboleto.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CAEPF: Formatarcaepf.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CAEPF: Validarcaepf.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CAEPF: Interpretarcaepf.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CBO: Consultarcbo.get | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CBO: Validarcbo.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CBO: Interpretarcbo.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CEI: Formatarcei.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CEI: Validarcei.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CEI: Interpretarcei.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CEP: Interpretarcep.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Certidão: Formatarcertidao.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Certidão: Decodificarcertidao.getInfo | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Certidão: Interpretarcertidao.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CFOP: Consultarcfop.get | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CFOP: Validarcfop.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CFOP: Interpretarcfop.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNAE: Formatarcnae.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNAE: Consultarcnae.get | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNAE: Validarcnae.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNAE: Interpretarcnae.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNH: Formatarcnh.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNH: Gerarcnh.generate | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNH: Interpretarcnh.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNO: Formatarcno.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNO: Validarcno.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNO: Interpretarcno.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNPJ: Interpretarcnpj.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNS (Cartão SUS): Formatarcns.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNS (Cartão SUS): Validarcns.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CNS (Cartão SUS): Interpretarcns.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CPF: Interpretarcpf.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Cartão de pagamento: ValidarcreditCard.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CSOSN: Validarcsosn.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
CST: Validarcst.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Moeda (real): Interpretarcurrency.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Datas e feriados: Difference in business daysdate.differenceInBusinessDays | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Datas e feriados: Is business daydate.isBusinessDay | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
IBAN: Formatariban.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
IBAN: Decodificariban.getInfo | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
IBAN: Validariban.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
IBAN: Interpretariban.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Natureza jurídica: FormatarlegalNature.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Natureza jurídica: GerarlegalNature.generate | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Natureza jurídica: ConsultarlegalNature.get | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Natureza jurídica: List by categorylegalNature.listByCategory | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Natureza jurídica: InterpretarlegalNature.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Processo judicial: InterpretarlegalProcess.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Placa de veículo: InterpretarlicensePlate.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Municípios: Get by codemunicipality.getByCode | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Municípios: Listarmunicipality.list | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
NCM: Formatarncm.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
NCM: Validarncm.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
NCM: Interpretarncm.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Chave de acesso NF-e: FormatarnfeKey.format | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Chave de acesso NF-e: DecodificarnfeKey.getInfo | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Chave de acesso NF-e: ValidarnfeKey.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Chave de acesso NF-e: InterpretarnfeKey.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Números por extenso: Escrever por extensonumber.convertToWords | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Passaporte: Interpretarpassport.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Telefone: Is valid landlinephone.isValidLandline | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Telefone: Is valid mobilephone.isValidMobile | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Telefone: Is valid servicephone.isValidService | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Telefone: Interpretarphone.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
PIS/PASEP: Interpretarpis.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Chave Pix: DecodificarpixKey.getInfo | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Chave Pix: ValidarpixKey.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Pix copia e cola (BR Code): DecodificarpixPayload.getInfo | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Pix copia e cola (BR Code): ValidarpixPayload.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Registro profissional: ValidarregistroProfissional.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
RENAVAM: Gerarrenavam.generate | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Estados (UF): Get timezonestate.getTimezone | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Estados (UF): Listarstate.list | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Texto: Capitalizetext.capitalize | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Texto: Remove accentstext.removeAccents | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Chassi (VIN): Validarvin.isValid | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
Título de eleitor: InterpretarvoterId.parse | ausente | 5: JavaScript, Go, Ruby, Rust, .NET |
DDD: DecodificarareaCode.getInfo | ausente | 4: JavaScript, Go, Ruby, .NET |
Certidão: Validarcertidao.isValid | ausente | 4: JavaScript, Go, Ruby, Rust |
Datas e feriados: Get holidaysdate.getHolidays | ausente | 4: JavaScript, Go, Rust, .NET |
Inscrição estadual: Validarie.isValid | ausente | 4: JavaScript, Go, Rust, .NET |
Pix copia e cola (BR Code): GerarpixPayload.generate | ausente | 4: JavaScript, Go, Ruby, Rust |
Estados (UF): Get by ibge codestate.getByIbgeCode | ausente | 4: JavaScript, Go, Ruby, .NET |
Boleto: Decodificarboleto.getInfo | ausente | 3: JavaScript, Go, Ruby |
DDD: Get by municipality codeareaCode.getByMunicipalityCode | ausente | 1: JavaScript |
CBO: Formatarcbo.format | ausente | 1: JavaScript |
CEP: Get statecep.getState | ausente | 1: JavaScript |
CEST: Formatarcest.format | ausente | 1: JavaScript |
CEST: Consultarcest.get | ausente | 1: JavaScript |
CEST: Validarcest.isValid | ausente | 1: JavaScript |
CEST: Interpretarcest.parse | ausente | 1: JavaScript |
CFOP: Formatarcfop.format | ausente | 1: JavaScript |
CID-10: Formatarcid10.format | ausente | 1: JavaScript |
CID-10: Consultarcid10.get | ausente | 1: JavaScript |
CID-10: Validarcid10.isValid | ausente | 1: JavaScript |
CID-10: Interpretarcid10.parse | ausente | 1: JavaScript |
cClassTrib: ConsultarclassTrib.get | ausente | 1: JavaScript |
cClassTrib: ValidarclassTrib.isValid | ausente | 1: JavaScript |
CNPJ: Decodificarcnpj.getInfo | ausente | 1: JavaScript |
CPF: Decodificarcpf.getInfo | ausente | 1: JavaScript |
CST IBS/CBS: ConsultarcstIbsCbs.get | ausente | 1: JavaScript |
CST IBS/CBS: ValidarcstIbsCbs.isValid | ausente | 1: JavaScript |
Datas e feriados: Add business daysdate.addBusinessDays | ausente | 1: JavaScript |
Datas e feriados: Sub business daysdate.subBusinessDays | ausente | 1: JavaScript |
GTIN (EAN/UPC): Decodificargtin.getInfo | ausente | 1: JavaScript |
GTIN (EAN/UPC): Validargtin.isValid | ausente | 1: JavaScript |
ISBN: Formatarisbn.format | ausente | 1: JavaScript |
ISBN: Decodificarisbn.getInfo | ausente | 1: JavaScript |
ISBN: Validarisbn.isValid | ausente | 1: JavaScript |
ISBN: Interpretarisbn.parse | ausente | 1: JavaScript |
Processo judicial: DecodificarlegalProcess.getInfo | ausente | 1: JavaScript |
Municípios: List by area codemunicipality.listByAreaCode | ausente | 1: JavaScript |
NBS: Formatarnbs.format | ausente | 1: JavaScript |
NBS: Consultarnbs.get | ausente | 1: JavaScript |
NBS: Validarnbs.isValid | ausente | 1: JavaScript |
NBS: Interpretarnbs.parse | ausente | 1: JavaScript |
Chave de acesso NFS-e: DecodificarnfseKey.getInfo | ausente | 1: JavaScript |
Chave de acesso NFS-e: ValidarnfseKey.isValid | ausente | 1: JavaScript |
Chave de acesso NFS-e: InterpretarnfseKey.parse | ausente | 1: JavaScript |
Lista de serviços (LC 116): ConsultarserviceItem.get | ausente | 1: JavaScript |
Lista de serviços (LC 116): ValidarserviceItem.isValid | ausente | 1: JavaScript |
Estados (UF): Get capitalstate.getCapital | ausente | 1: JavaScript |
Estados (UF): Get regionsstate.getRegions | ausente | 1: JavaScript |
Estados (UF): List by regionstate.listByRegion | ausente | 1: JavaScript |
Inscrição SUFRAMA: Formatarsuframa.format | ausente | 1: JavaScript |
Inscrição SUFRAMA: Gerarsuframa.generate | ausente | 1: JavaScript |
Inscrição SUFRAMA: Validarsuframa.isValid | ausente | 1: JavaScript |
Inscrição SUFRAMA: Interpretarsuframa.parse | ausente | 1: JavaScript |
Título de eleitor: DecodificarvoterId.getInfo | ausente | 1: JavaScript |
Casos que falham
Ver os 352 casos que falham
| Caso | Esperado | Obtido |
|---|---|---|
cep.format#[""] | "" | expected "", threw: {error, invalid} |
cep.format#["0"] | "0" | expected "0", threw: {error, invalid} |
cep.format#["01"] | "01" | expected "01", threw: {error, invalid} |
cep.format#["010"] | "010" | expected "010", threw: {error, invalid} |
cep.format#["0100"] | "0100" | expected "0100", threw: {error, invalid} |
cep.format#["01001"] | "01001" | expected "01001", threw: {error, invalid} |
cep.format#["010010"] | "01001-0" | expected "01001-0", threw: {error, invalid} |
cep.format#["0100100"] | "01001-00" | expected "01001-00", threw: {error, invalid} |
cep.format#["01001000000000"] | "01001-000" | expected "01001-000", threw: {error, invalid} |
cep.format#["a0.10cr01?00#ab0"] | "01001-000" | expected "01001-000", threw: {error, invalid} |
cep.format#negative-number | "" | expected "", threw: error:function_clause |
cep.format#fractional-number | "" | expected "", threw: error:function_clause |
cep.format#unsafe-number | "" | expected "", threw: error:function_clause |
cep.isValid#["01310-100"] | true | false |
cep.isValid#[20040020] | true | false |
cep.isValid#[" 01310-100 "] | true | false |
cep.isValid#["92.500-000"] | true | false |
cep.isValid#["013 10 100"] | true | false |
cep.isValid#["01310.100"] | true | false |
cep.isValid#["01310/100"] | true | false |
cep.isValid#["0131/0100"] | true | false |
cep.isValid#["--0131 0100"] | true | false |
cep.isValid#["01310/100/"] | true | false |
cnh.isValid#valid-sample | true | false |
cnh.isValid#["00000009309"] | true | false |
cnh.isValid#["ab00000000119"] | false | true |
cnh.isValid#["00000000119ab"] | false | true |
cnh.isValid#["000000001_19"] | false | true |
cnpj.format#[""] | "" | expected "", threw: {error, invalid} |
cnpj.format#["4"] | "4" | expected "4", threw: {error, invalid} |
cnpj.format#["46"] | "46" | expected "46", threw: {error, invalid} |
cnpj.format#["468"] | "46.8" | expected "46.8", threw: {error, invalid} |
cnpj.format#["4684"] | "46.84" | expected "46.84", threw: {error, invalid} |
cnpj.format#["46843"] | "46.843" | expected "46.843", threw: {error, invalid} |
cnpj.format#["468434"] | "46.843.4" | expected "46.843.4", threw: {error, invalid} |
cnpj.format#["4684348"] | "46.843.48" | expected "46.843.48", threw: {error, invalid} |
cnpj.format#["46843485"] | "46.843.485" | expected "46.843.485", threw: {error, invalid} |
cnpj.format#["468434850"] | "46.843.485/0" | expected "46.843.485/0", threw: {error, invalid} |
cnpj.format#["4684348500"] | "46.843.485/00" | expected "46.843.485/00", threw: {error, invalid} |
cnpj.format#["46843485000"] | "46.843.485/000" | expected "46.843.485/000", threw: {error, invalid} |
cnpj.format#["468434850001"] | "46.843.485/0001" | expected "46.843.485/0001", threw: {error, invalid} |
cnpj.format#["4684348500018"] | "46.843.485/0001-8" | expected "46.843.485/0001-8", threw: {error, invalid} |
cnpj.format#[4] | "4" | expected "4", threw: error:function_clause |
cnpj.format#[46] | "46" | expected "46", threw: error:function_clause |
cnpj.format#[468] | "46.8" | expected "46.8", threw: error:function_clause |
cnpj.format#[4684] | "46.84" | expected "46.84", threw: error:function_clause |
cnpj.format#[46843] | "46.843" | expected "46.843", threw: error:function_clause |
cnpj.format#[468434] | "46.843.4" | expected "46.843.4", threw: error:function_clause |
cnpj.format#[4684348] | "46.843.48" | expected "46.843.48", threw: error:function_clause |
cnpj.format#[46843485] | "46.843.485" | expected "46.843.485", threw: error:function_clause |
cnpj.format#[468434850] | "46.843.485/0" | expected "46.843.485/0", threw: error:function_clause |
cnpj.format#[4684348500] | "46.843.485/00" | expected "46.843.485/00", threw: error:function_clause |
cnpj.format#[46843485000] | "46.843.485/000" | expected "46.843.485/000", threw: error:function_clause |
cnpj.format#[468434850001] | "46.843.485/0001" | expected "46.843.485/0001", threw: error:function_clause |
cnpj.format#[4684348500018] | "46.843.485/0001-8" | expected "46.843.485/0001-8", threw: error:function_clause |
cnpj.format#[46843485000186] | "46.843.485/0001-86" | expected "46.843.485/0001-86", threw: error:function_clause |
cnpj.format#["468434850001860000000000"] | "46.843.485/0001-86" | expected "46.843.485/0001-86", threw: {error, invalid} |
cnpj.format#["46.?ABC843.485/0001-86abc"] | "46.843.485/0001-86" | expected "46.843.485/0001-86", threw: {error, invalid} |
cnpj.format#[-11222333000181] | "" | expected "", threw: error:function_clause |
cnpj.format#[-1] | "" | expected "", threw: error:function_clause |
cnpj.format#[1.5] | "" | expected "", threw: error:function_clause |
cnpj.format#[9007199254740992] | "" | expected "", threw: error:function_clause |
cnpj.format#["24522200000174"] | "24.522.200/0001-74" | expected "24.522.200/0001-74", threw: {error, invalid} |
cnpj.format#["12OUT345000199"] | "12.345.000/199" | expected "12.345.000/199", threw: {error, invalid} |
cnpj.generate#given-branch | null | expected /^[0-9]{8}0003[0-9]{2}$/, threw: error:function_clause |
cnpj.generate#[{"version":2,"branch":1}] | null | expected /^[0-9A-Z]{8}0001[0-9]{2}$/, threw: error:function_clause |
cnpj.generate#[{"branch":0}] | null | expected /^[0-9]{14}$/, threw: error:function_clause |
cnpj.generate#[{"branch":9999}] | null | expected /^[0-9]{8}9999[0-9]{2}$/, threw: error:function_clause |
cnpj.generate#[{"branch":42}] | null | expected /^[0-9]{8}0042[0-9]{2}$/, threw: error:function_clause |
cnpj.isValid#["Q0SLFMBD7VX439"] | false | true |
cnpj.isValid#["60.391.947/0001-00"] | true | false |
cnpj.isValid#["11 222 333 0001 81"] | true | false |
cnpj.isValid#[" 13723705000189 "] | true | false |
cpf.format#[""] | "" | expected "", threw: {error, invalid} |
cpf.format#["9"] | "9" | expected "9", threw: {error, invalid} |
cpf.format#["94"] | "94" | expected "94", threw: {error, invalid} |
cpf.format#["943"] | "943" | expected "943", threw: {error, invalid} |
cpf.format#["9438"] | "943.8" | expected "943.8", threw: {error, invalid} |
cpf.format#["94389"] | "943.89" | expected "943.89", threw: {error, invalid} |
cpf.format#["943895"] | "943.895" | expected "943.895", threw: {error, invalid} |
cpf.format#["9438957"] | "943.895.7" | expected "943.895.7", threw: {error, invalid} |
cpf.format#["94389575"] | "943.895.75" | expected "943.895.75", threw: {error, invalid} |
cpf.format#["943895751"] | "943.895.751" | expected "943.895.751", threw: {error, invalid} |
cpf.format#["9438957510"] | "943.895.751-0" | expected "943.895.751-0", threw: {error, invalid} |
cpf.format#[9] | "9" | expected "9", threw: error:function_clause |
cpf.format#[94] | "94" | expected "94", threw: error:function_clause |
cpf.format#[943] | "943" | expected "943", threw: error:function_clause |
cpf.format#[9438] | "943.8" | expected "943.8", threw: error:function_clause |
cpf.format#[94389] | "943.89" | expected "943.89", threw: error:function_clause |
cpf.format#[943895] | "943.895" | expected "943.895", threw: error:function_clause |
cpf.format#[9438957] | "943.895.7" | expected "943.895.7", threw: error:function_clause |
cpf.format#[94389575] | "943.895.75" | expected "943.895.75", threw: error:function_clause |
cpf.format#[943895751] | "943.895.751" | expected "943.895.751", threw: error:function_clause |
cpf.format#[9438957510] | "943.895.751-0" | expected "943.895.751-0", threw: error:function_clause |
cpf.format#[94389575104] | "943.895.751-04" | expected "943.895.751-04", threw: error:function_clause |
cpf.format#["94389575104000000"] | "943.895.751-04" | expected "943.895.751-04", threw: {error, invalid} |
cpf.format#["943.?ABC895.751-04abc"] | "943.895.751-04" | expected "943.895.751-04", threw: {error, invalid} |
cpf.format#[123456789.09] | "" | expected "", threw: error:function_clause |
cpf.format#[-1] | "" | expected "", threw: error:function_clause |
cpf.format#[1.5] | "" | expected "", threw: error:function_clause |
cpf.format#[9007199254740992] | "" | expected "", threw: error:function_clause |
cpf.isValid#["962.718.458-60"] | true | false |
cpf.isValid#["123 456 789 09"] | true | false |
cpf.isValid#[" 12345678909"] | true | false |
cpf.isValid#["12345678909 "] | true | false |
cpf.isValid#["280.012.389-38"] | true | false |
licensePlate.convertToMercosul#hyphen-mask | "ABC1C34" | expected "ABC1C34", threw: {error, invalid} |
licensePlate.convertToMercosul#already-mercosul | "" | expected "", threw: {error, invalid} |
licensePlate.convertToMercosul#invalid | "" | expected "", threw: {error, invalid} |
licensePlate.convertToMercosul#empty | "" | expected "", threw: {error, invalid} |
licensePlate.convertToMercosul#["ABC12D3"] | "" | expected "", threw: {error, invalid} |
licensePlate.convertToMercosul#["ABC1234EXTRA"] | "" | expected "", threw: {error, invalid} |
licensePlate.convertToMercosul#["ABC12345"] | "" | expected "", threw: {error, invalid} |
licensePlate.convertToMercosul#["ABC123"] | "" | expected "", threw: {error, invalid} |
licensePlate.format#[""] | "" | expected "", threw: {error, invalid} |
licensePlate.format#["a"] | "A" | expected "A", threw: {error, invalid} |
licensePlate.format#["ab"] | "AB" | expected "AB", threw: {error, invalid} |
licensePlate.format#["abc"] | "ABC" | expected "ABC", threw: {error, invalid} |
licensePlate.format#["abc1"] | "ABC-1" | expected "ABC-1", threw: {error, invalid} |
licensePlate.format#["abc12"] | "ABC-12" | expected "ABC-12", threw: {error, invalid} |
licensePlate.format#["abc123"] | "ABC-123" | expected "ABC-123", threw: {error, invalid} |
licensePlate.format#["abc1d"] | "ABC1D" | expected "ABC1D", threw: {error, invalid} |
licensePlate.format#["abc1d2"] | "ABC1D2" | expected "ABC1D2", threw: {error, invalid} |
licensePlate.format#["abc-1234"] | "ABC-1234" | expected "ABC-1234", threw: {error, invalid} |
licensePlate.format#["abc1-d23"] | "ABC1D23" | expected "ABC1D23", threw: {error, invalid} |
licensePlate.format#["abc1da2"] | "" | expected "", threw: {error, invalid} |
licensePlate.format#["abc12d"] | "" | expected "", threw: {error, invalid} |
licensePlate.format#["abc12d3"] | "" | expected "", threw: {error, invalid} |
licensePlate.format#["1"] | "" | expected "", threw: {error, invalid} |
licensePlate.format#["1ab4"] | "" | expected "", threw: {error, invalid} |
licensePlate.format#["ab14"] | "" | expected "", threw: {error, invalid} |
licensePlate.generate#mercosul-fifth-char-k-to-z | null | "YBE0G53" |
licensePlate.generate#explicit-mercosul | null | "SJN6F83" |
licensePlate.generate#unknown-format-falls-back | null | expected /^[A-Z]{3}[0-9][K-Z][0-9]{2}$/, threw: {error, invalid} |
licensePlate.generate#bogus-format-falls-back | null | threw: {error, invalid} |
licensePlate.getFormat#["WDG1S21"] | "LLLNLNN" | "mercosul" |
licensePlate.getFormat#["WDG1S22"] | "LLLNLNN" | "mercosul" |
licensePlate.getFormat#["wdg1s21"] | "LLLNLNN" | "mercosul" |
licensePlate.getFormat#["GJG8U81"] | "LLLNLNN" | "mercosul" |
licensePlate.getFormat#["GJG8U82"] | "LLLNLNN" | "mercosul" |
licensePlate.getFormat#["gjg8u81"] | "LLLNLNN" | "mercosul" |
licensePlate.getFormat#["KDS4W15"] | "LLLNLNN" | "mercosul" |
licensePlate.getFormat#["KDS4W16"] | "LLLNLNN" | "mercosul" |
licensePlate.getFormat#["kds4w15"] | "LLLNLNN" | "mercosul" |
licensePlate.getFormat#["ABC1234"] | "LLLNNNN" | "old_format" |
licensePlate.getFormat#["ABC1D23"] | "LLLNLNN" | "mercosul" |
licensePlate.isValid#["abc-1234"] | true | false |
licensePlate.isValid#["ABC-1234"] | true | false |
licensePlate.isValid#["ABC 1234"] | true | false |
licensePlate.isValid#["ABC-1D23"] | true | false |
licensePlate.isValid#["ABC1D23",{"format":"LLLNLNN"}] | true | expected true, threw: error:function_clause |
licensePlate.isValid#["ABC1D23",{"format":"LLLNNNN"}] | false | expected false, threw: error:function_clause |
licensePlate.isValid#["ABC1234",{"format":"LLLNNNN"}] | true | expected true, threw: error:function_clause |
licensePlate.isValid#["ABC1234",{"format":"LLLNLNN"}] | false | expected false, threw: error:function_clause |
licensePlate.isValid#["abc1d23",{"format":"LLLNLNN"}] | true | expected true, threw: error:function_clause |
licensePlate.isValid#["ABC12D3",{"format":"LLLNLNN"}] | false | expected false, threw: error:function_clause |
licensePlate.isValid#["abc",{"format":"LLLNNNN"}] | false | expected false, threw: error:function_clause |
licensePlate.isValid#["ABC1D23",{"format":"mercosul"}] | true | expected true, threw: error:function_clause |
licensePlate.isValid#["ABC1234",{}] | true | expected true, threw: error:function_clause |
licensePlate.isValid#["ABC.1234"] | true | false |
licensePlate.isValid#["ABC/1234"] | true | false |
licensePlate.isValid#["ABC - 1234"] | true | false |
licensePlate.isValid#["ABC-1234",{"format":"LLLNNNN"}] | true | expected true, threw: error:function_clause |
passport.format#lowercase | "ACD12736" | expected "ACD12736", threw: {error, invalid} |
passport.format#partial | "AB12" | expected "AB12", threw: {error, invalid} |
passport.format#empty | "" | expected "", threw: {error, invalid} |
passport.format#caps-length | "AB123456" | expected "AB123456", threw: {error, invalid} |
passport.format#["A"] | "A" | expected "A", threw: {error, invalid} |
passport.format#["AB"] | "AB" | expected "AB", threw: {error, invalid} |
passport.format#["AB1"] | "AB1" | expected "AB1", threw: {error, invalid} |
passport.format#["AB123"] | "AB123" | expected "AB123", threw: {error, invalid} |
passport.format#["AB1234"] | "AB1234" | expected "AB1234", threw: {error, invalid} |
passport.format#["AB12345"] | "AB12345" | expected "AB12345", threw: {error, invalid} |
passport.format#["a"] | "A" | expected "A", threw: {error, invalid} |
passport.format#["ac"] | "AC" | expected "AC", threw: {error, invalid} |
passport.format#["acd"] | "ACD" | expected "ACD", threw: {error, invalid} |
passport.format#["acd1"] | "ACD1" | expected "ACD1", threw: {error, invalid} |
passport.format#["acd12"] | "ACD12" | expected "ACD12", threw: {error, invalid} |
passport.format#["acd127"] | "ACD127" | expected "ACD127", threw: {error, invalid} |
passport.format#["acd1273"] | "ACD1273" | expected "ACD1273", threw: {error, invalid} |
passport.isValid#lowercase | true | false |
passport.isValid#masked | true | false |
passport.isValid#dotted | true | false |
passport.isValid#["AB-123.456"] | true | false |
phone.format#subscriber-number | "98888-7777" | expected "98888-7777", threw: {error, invalid} |
phone.format#partial | "98888-777" | expected "98888-777", threw: {error, invalid} |
phone.format#empty | "" | expected "", threw: {error, invalid} |
phone.format#ddd-under-default-mask | "11300-0000" | "(11)3000-0000" |
phone.format#["9"] | "9" | expected "9", threw: {error, invalid} |
phone.format#["98"] | "98" | expected "98", threw: {error, invalid} |
phone.format#["988"] | "988" | expected "988", threw: {error, invalid} |
phone.format#["9888"] | "9888" | expected "9888", threw: {error, invalid} |
phone.format#["98888"] | "98888" | expected "98888", threw: {error, invalid} |
phone.format#["988887"] | "98888-7" | expected "98888-7", threw: {error, invalid} |
phone.format#["9888877"] | "98888-77" | expected "98888-77", threw: {error, invalid} |
phone.format#[9007199254740992] | "" | expected "", threw: error:function_clause |
phone.format#["+5511988887777"] | "11988-8877" | expected "11988-8877", threw: {error, invalid} |
phone.format#["+55 55 98888-7777"] | "55988-8877" | expected "55988-8877", threw: {error, invalid} |
phone.format#["11900000000"] | "11900-0000" | "(11)90000-0000" |
phone.generate#["mobile"] | null | expected /^\d{2}9\d{8}$/, threw: error:function_clause |
phone.generate#["landline"] | null | expected /^\d{2}[2-5]\d{7}$/, threw: error:function_clause |
phone.generate#["service"] | null | expected /^(0(300|303|500|800|900)\d{7}|[34]00\d{5})$/, threw: error:function_clause |
phone.isValid#["+55 0800 123 4567",{"accept":["service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["0055 4004-1234",{"accept":["service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["5508001234567",{"accept":["service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["55 0300 123 4567",{"accept":["service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["(11) 98765-4321",{"accept":[]}] | false | expected false, threw: error:function_clause |
phone.isValid#["1130000000",{"accept":[]}] | false | expected false, threw: error:function_clause |
phone.isValid#["08001234567",{"accept":[]}] | false | expected false, threw: error:function_clause |
phone.isValid#["11612345678",{"version":2}] | false | expected false, threw: error:function_clause |
phone.isValid#["11700123456",{"version":2}] | false | expected false, threw: error:function_clause |
phone.isValid#["11987654321",{"accept":["landline"]}] | false | expected false, threw: error:function_clause |
phone.isValid#["1130000000",{"accept":["mobile"]}] | false | expected false, threw: error:function_clause |
phone.isValid#["11987654321",{"accept":["service"]}] | false | expected false, threw: error:function_clause |
phone.isValid#["08001234567",{"accept":["mobile","landline"]}] | false | expected false, threw: error:function_clause |
phone.isValid#["(11) 98765-4321"] | true | false |
phone.isValid#["11987654321",{"version":2}] | true | expected true, threw: error:function_clause |
phone.isValid#["11712345678",{"version":2}] | true | expected true, threw: error:function_clause |
phone.isValid#["11812345678",{"version":2}] | true | expected true, threw: error:function_clause |
phone.isValid#["(11) 3000-0000"] | true | false |
phone.isValid#["11712345678",{"version":1}] | true | expected true, threw: error:function_clause |
phone.isValid#["+5511987654321"] | true | false |
phone.isValid#["+55 11 98765-4321"] | true | false |
phone.isValid#["+55 (11) 98765-4321"] | true | false |
phone.isValid#["0055 11 98765-4321"] | true | false |
phone.isValid#["5511987654321"] | true | false |
phone.isValid#["+55 (11) 3000-0000"] | true | false |
phone.isValid#["+55 11 98765-4321",{"version":2}] | true | expected true, threw: error:function_clause |
phone.isValid#["11987654321",{"accept":["mobile"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["1130000000",{"accept":["landline"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["08001234567",{"accept":["service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["40041234",{"accept":["service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["190",{"accept":["service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["0800 123 4567",{"accept":["service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["11987654321",{"accept":["mobile","landline","service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["08001234567",{"accept":["mobile","landline","service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["112",{"accept":["service"]}] | true | expected true, threw: error:function_clause |
phone.isValid#["abc190",{"accept":["service"]}] | false | expected false, threw: error:function_clause |
phone.isValid#["0800 123 4567 ramal 1",{"accept":["service"]}] | false | expected false, threw: error:function_clause |
phone.isValid#["11.98765/4321"] | true | false |
phone.isValid#["11900000000",{"accept":[]}] | false | expected false, threw: error:function_clause |
pis.format#[""] | "" | expected "", threw: {error, invalid} |
pis.format#["0"] | "0" | expected "0", threw: {error, invalid} |
pis.format#["00"] | "00" | expected "00", threw: {error, invalid} |
pis.format#["000"] | "000" | expected "000", threw: {error, invalid} |
pis.format#["0000"] | "000.0" | expected "000.0", threw: {error, invalid} |
pis.format#["00000"] | "000.00" | expected "000.00", threw: {error, invalid} |
pis.format#["000000"] | "000.000" | expected "000.000", threw: {error, invalid} |
pis.format#["0000000"] | "000.0000" | expected "000.0000", threw: {error, invalid} |
pis.format#["00000000"] | "000.00000" | expected "000.00000", threw: {error, invalid} |
pis.format#["000000000"] | "000.00000.0" | expected "000.00000.0", threw: {error, invalid} |
pis.format#["0000000000"] | "000.00000.00" | expected "000.00000.00", threw: {error, invalid} |
pis.format#["000000000000"] | "000.00000.00-0" | expected "000.00000.00-0", threw: {error, invalid} |
pis.format#["000.0"] | "000.0" | expected "000.0", threw: {error, invalid} |
pis.format#["000.00"] | "000.00" | expected "000.00", threw: {error, invalid} |
pis.format#["000.000"] | "000.000" | expected "000.000", threw: {error, invalid} |
pis.format#["000.0000"] | "000.0000" | expected "000.0000", threw: {error, invalid} |
pis.format#["000.00000"] | "000.00000" | expected "000.00000", threw: {error, invalid} |
pis.format#["000.000000"] | "000.00000.0" | expected "000.00000.0", threw: {error, invalid} |
pis.format#["000.00000.0"] | "000.00000.0" | expected "000.00000.0", threw: {error, invalid} |
pis.format#["000.00000.00"] | "000.00000.00" | expected "000.00000.00", threw: {error, invalid} |
pis.format#["000.00000.000"] | "000.00000.00-0" | expected "000.00000.00-0", threw: {error, invalid} |
pis.format#["000.00000.00-0"] | "000.00000.00-0" | expected "000.00000.00-0", threw: {error, invalid} |
pis.format#["000.00000.00-00"] | "000.00000.00-0" | expected "000.00000.00-0", threw: {error, invalid} |
pis.format#["000#Error*&@#0000#Char!00000"] | "000.00000.00-0" | expected "000.00000.00-0", threw: {error, invalid} |
pis.format#["#-+Error#000000000000#Char!"] | "000.00000.00-0" | expected "000.00000.00-0", threw: {error, invalid} |
pis.format#["000000#+_Error#Char!$#000000"] | "000.00000.00-0" | expected "000.00000.00-0", threw: {error, invalid} |
pis.format#[1] | "1" | expected "1", threw: error:function_clause |
pis.format#[10] | "10" | expected "10", threw: error:function_clause |
pis.format#[100] | "100" | expected "100", threw: error:function_clause |
pis.format#[1000] | "100.0" | expected "100.0", threw: error:function_clause |
pis.format#[10000] | "100.00" | expected "100.00", threw: error:function_clause |
pis.format#[100000] | "100.000" | expected "100.000", threw: error:function_clause |
pis.format#[1000000] | "100.0000" | expected "100.0000", threw: error:function_clause |
pis.format#[10000000] | "100.00000" | expected "100.00000", threw: error:function_clause |
pis.format#[100000000] | "100.00000.0" | expected "100.00000.0", threw: error:function_clause |
pis.format#[1000000000] | "100.00000.00" | expected "100.00000.00", threw: error:function_clause |
pis.format#[10000000000] | "100.00000.00-0" | expected "100.00000.00-0", threw: error:function_clause |
pis.format#[100000000000] | "100.00000.00-0" | expected "100.00000.00-0", threw: error:function_clause |
pis.format#[1000000000000] | "100.00000.00-0" | expected "100.00000.00-0", threw: error:function_clause |
pis.format#[100.1] | "" | expected "", threw: error:function_clause |
pis.format#[100.11] | "" | expected "", threw: error:function_clause |
pis.format#[100.101] | "" | expected "", threw: error:function_clause |
pis.format#[100.1001] | "" | expected "", threw: error:function_clause |
pis.format#[100.10001] | "" | expected "", threw: error:function_clause |
pis.format#[100.100001] | "" | expected "", threw: error:function_clause |
pis.format#[100.1000001] | "" | expected "", threw: error:function_clause |
pis.format#[100.10000001] | "" | expected "", threw: error:function_clause |
pis.format#[100.100000001] | "" | expected "", threw: error:function_clause |
pis.format#["0000000000000"] | "000.00000.00-0" | expected "000.00000.00-0", threw: {error, invalid} |
pis.format#["00000000000000"] | "000.00000.00-0" | expected "000.00000.00-0", threw: {error, invalid} |
pis.format#["000000000000000"] | "000.00000.00-0" | expected "000.00000.00-0", threw: {error, invalid} |
pis.format#[-12345678901] | "" | expected "", threw: error:function_clause |
pis.format#[9007199254740992] | "" | expected "", threw: error:function_clause |
pis.format#["12345678901"] | "123.45678.90-1" | expected "123.45678.90-1", threw: {error, invalid} |
pis.isValid#repeated-digits | false | true |
pis.isValid#["120.5641.284-7"] | true | false |
pis.isValid#["120/56874/10-7"] | true | false |
pis.isValid#["120 56874 10 7"] | true | false |
pis.isValid#["120.1213.266-0"] | true | false |
pis.isValid#["120.7041.469-0"] | true | false |
renavam.isValid#["0063988/4962"] | true | false |
renavam.isValid#["639884962"] | true | false |
renavam.isValid#[639884962] | true | false |
renavam.isValid#["0063988.4962"] | true | false |
renavam.isValid#["00639884-962"] | true | false |
renavam.isValid#[" 00639884962 "] | true | false |
renavam.isValid#[12345678900] | true | false |
voterId.format#[""] | "" | expected "", threw: {error, invalid} |
voterId.format#["1"] | "1" | expected "1", threw: {error, invalid} |
voterId.format#["12"] | "12" | expected "12", threw: {error, invalid} |
voterId.format#["123"] | "123" | expected "123", threw: {error, invalid} |
voterId.format#["1234"] | "1234" | expected "1234", threw: {error, invalid} |
voterId.format#["12345"] | "1234 5" | expected "1234 5", threw: {error, invalid} |
voterId.format#["123456"] | "1234 56" | expected "1234 56", threw: {error, invalid} |
voterId.format#["1234567"] | "1234 567" | expected "1234 567", threw: {error, invalid} |
voterId.format#["12345678"] | "1234 5678" | expected "1234 5678", threw: {error, invalid} |
voterId.format#["123456780"] | "1234 5678 0" | expected "1234 5678 0", threw: {error, invalid} |
voterId.format#["1234567801"] | "1234 5678 01" | expected "1234 5678 01", threw: {error, invalid} |
voterId.format#["12345678012"] | "1234 5678 01 2" | expected "1234 5678 01 2", threw: {error, invalid} |
voterId.format#["123456780124"] | "1234 5678 01 24" | expected "1234 5678 01 24", threw: {error, invalid} |
voterId.format#["1234567880191"] | "1234 5678 80 19" | expected "1234 5678 80 19", threw: {error, invalid} |
voterId.format#["1234567880299"] | "1234 5678 80 29" | expected "1234 5678 80 29", threw: {error, invalid} |
voterId.format#["12345678801912"] | "1234 5678 80 19" | expected "1234 5678 80 19", threw: {error, invalid} |
voterId.format#["123456788019123"] | "1234 5678 80 19" | expected "1234 5678 80 19", threw: {error, invalid} |
voterId.format#["12345678803991"] | "1234 5678 80 39" | expected "1234 5678 80 39", threw: {error, invalid} |
voterId.format#["1234567880399"] | "1234 5678 80 39" | expected "1234 5678 80 39", threw: {error, invalid} |
voterId.format#["123456788"] | "1234 5678 8" | expected "1234 5678 8", threw: {error, invalid} |
voterId.format#["123456788019"] | "1234 5678 80 19" | expected "1234 5678 80 19", threw: {error, invalid} |
voterId.format#["123450159"] | "1234 5015 9" | expected "1234 5015 9", threw: {error, invalid} |
voterId.format#[-123456780124] | "" | expected "", threw: error:function_clause |
voterId.format#[1.5] | "" | expected "", threw: error:function_clause |
voterId.format#[9007199254740992] | "" | expected "", threw: error:function_clause |
voterId.format#["123456780175"] | "1234 5678 01 75" | expected "1234 5678 01 75", threw: {error, invalid} |
voterId.isValid#["1234567880191"] | false | true |
voterId.isValid#["1023-8501-06-71"] | true | false |
voterId.isValid#["1023 8501 06 71"] | true | false |
voterId.isValid#["1023.8501.06.71"] | true | false |
voterId.isValid#["000010191"] | true | false |
voterId.isValid#["123450159"] | true | false |
voterId.isValid#["00123450159"] | true | false |
voterId.isValid#["1 2345 01 59"] | true | false |
voterId.isValid#["12345 01 59"] | true | false |
voterId.isValid#["122844"] | true | false |
voterId.isValid#["12340639"] | true | false |
voterId.isValid#["1234 06 39"] | true | false |
voterId.isValid#["10191"] | true | false |
voterId.isValid#["0123456780191"] | false | true |
voterId.isValid#["0001.2345.01.59"] | true | false |
voterId.isValid#["123 4567 01 91"] | true | false |
voterId.isValid#["1023-8501/06-71"] | true | false |
voterId.isValid#[" 1023 8501 06 71 "] | true | false |
Funções sem exemplo de uso
Estas funções funcionam, mas os arquivos de uso da biblioteca não têm exemplo delas. A aba dessas funções neste site fica vazia.
- Placa de veículo: Get format
licensePlate.getFormat - Telefone: Formatar
phone.format
Badge para o seu README
O badge mostra a parcela de funções principais e os casos que passam, e muda a cada execução. Cole este Markdown no README da biblioteca:
[](https://brazilian-utils.com.br/libs/erlang/)