File manager - Edit - /var/www/html/homologBancodetalentos/tests/Unit/TalentBank/LegacyDocumentNormalizerTest.php
Back
<?php namespace Tests\Unit\TalentBank; use App\Support\TalentBank\LegacyDocumentNormalizer; use PHPUnit\Framework\TestCase; /** * Valida a normalização de documentos vindos do dump legado (SIATI). * Executa sem banco de dados — testes puramente unitários. */ class LegacyDocumentNormalizerTest extends TestCase { // ───────────────────────────────────────────────────────────────────────── // CPF // ───────────────────────────────────────────────────────────────────────── /** @test */ public function cpf_retorna_null_para_valor_nulo(): void { $this->assertNull(LegacyDocumentNormalizer::cpf(null)); } /** @test */ public function cpf_retorna_null_para_string_vazia(): void { $this->assertNull(LegacyDocumentNormalizer::cpf('')); } /** @test */ public function cpf_retorna_null_quando_tem_menos_de_11_digitos(): void { $this->assertNull(LegacyDocumentNormalizer::cpf('1234567')); } /** @test */ public function cpf_retorna_null_quando_tem_mais_de_11_digitos(): void { $this->assertNull(LegacyDocumentNormalizer::cpf('123456789012')); } /** @test */ public function cpf_aceita_string_com_apenas_digitos(): void { $this->assertSame('12345678909', LegacyDocumentNormalizer::cpf('12345678909')); } /** @test */ public function cpf_remove_mascara_e_retorna_apenas_digitos(): void { $this->assertSame('12345678909', LegacyDocumentNormalizer::cpf('123.456.789-09')); } /** @test */ public function cpf_preserva_zero_a_esquerda(): void { $this->assertSame('01234567890', LegacyDocumentNormalizer::cpf('012.345.678-90')); } // ───────────────────────────────────────────────────────────────────────── // CNPJ // ───────────────────────────────────────────────────────────────────────── /** @test */ public function cnpj_retorna_null_para_valor_nulo(): void { $this->assertNull(LegacyDocumentNormalizer::cnpj(null)); } /** @test */ public function cnpj_retorna_null_para_string_vazia(): void { $this->assertNull(LegacyDocumentNormalizer::cnpj('')); } /** @test */ public function cnpj_aceita_string_de_14_digitos(): void { $this->assertSame('12345678000195', LegacyDocumentNormalizer::cnpj('12345678000195')); } /** @test */ public function cnpj_remove_mascara(): void { $this->assertSame('12345678000195', LegacyDocumentNormalizer::cnpj('12.345.678/0001-95')); } /** @test */ public function cnpj_padeia_com_zeros_a_esquerda_quando_curto(): void { // CNPJ vindo como bigint sem zero à esquerda $this->assertSame('00123456780001', LegacyDocumentNormalizer::cnpj('123456780001')); } /** @test */ public function cnpj_trunca_para_14_digitos_quando_longo(): void { // bigint com dígito extra à esquerda (artefato de armazenamento) $result = LegacyDocumentNormalizer::cnpj('123456789000195'); $this->assertSame(14, strlen($result)); } /** @test */ public function cnpj_aceita_integer_como_bigint_do_legado(): void { // No legado o CNPJ era bigint — pode chegar como int no PHP $result = LegacyDocumentNormalizer::cnpj(28500627000392); $this->assertSame(14, strlen($result)); $this->assertSame('28500627000392', $result); } // ───────────────────────────────────────────────────────────────────────── // Email // ───────────────────────────────────────────────────────────────────────── /** @test */ public function email_retorna_null_para_valor_nulo(): void { $this->assertNull(LegacyDocumentNormalizer::email(null)); } /** @test */ public function email_retorna_null_para_string_vazia(): void { $this->assertNull(LegacyDocumentNormalizer::email('')); } /** @test */ public function email_retorna_null_para_string_apenas_espacos(): void { $this->assertNull(LegacyDocumentNormalizer::email(' ')); } /** @test */ public function email_normaliza_para_minusculas(): void { $this->assertSame('usuario@example.com', LegacyDocumentNormalizer::email('USUARIO@EXAMPLE.COM')); } /** @test */ public function email_remove_espacos_nas_bordas(): void { $this->assertSame('usuario@example.com', LegacyDocumentNormalizer::email(' usuario@example.com ')); } /** @test */ public function email_aceita_email_valido_simples(): void { $this->assertSame('teste@dominio.com.br', LegacyDocumentNormalizer::email('teste@dominio.com.br')); } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings