Files
Geradores/UnitTest/README.md
2026-10-11 23:52:48 +01:00

1.2 KiB

UnitTest

Testes xUnit da biblioteca GeradoresService e da API GeradoresWS.

dotnet test UnitTest
Ficheiro O que cobre
GeneratorRoundTripTests.cs Para cada gerador e cada valor de cada opção, gera valores e confirma que o validador os aceita. Também: campos da pessoa fictícia válidos, seed reprodutível, ids únicos, opções e quantidades inválidas
KnownValuesTests.cs Valores reais/conhecidos válidos e inválidos (NIF, NIPC, NISS, CC, IBAN, …) e o dígito de controlo esperado
DetectTests.cs Validador livre: ordem dos resultados, quase-acertos (formato certo, controlo errado) e valores sem correspondência
ApiTests.cs Testes de integração com WebApplicationFactory<Program>: listagem, geração em lote, 400/404, validação, detecção, OpenAPI e /health

Os testes de ida e volta são gerados a partir do GeneratorRegistry, por isso um gerador novo fica coberto sem escrever testes. Os valores conhecidos devem ser acrescentados à mão sempre que se corrige um bug num algoritmo.

O Jenkins corre dotnet test UnitTest/UnitTest.csproj -c Release antes de construir as imagens.