diff options
| author | Murilo Ijanc <[email protected]> | 2026-07-26 12:42:38 -0300 |
|---|---|---|
| committer | Murilo Ijanc <[email protected]> | 2026-07-26 13:10:34 -0300 |
| commit | a2b10fd494fb389e556e40134031eb86e56e11e7 (patch) | |
| tree | 08b6df8a06f2c7c15488b90d57a6d8286cd57a22 /tests/Cepis.Tests/Fixtures.cs | |
| download | csharp-a2b10fd494fb389e556e40134031eb86e56e11e7.tar.gz | |
Initial importv0.1.0
Diffstat (limited to 'tests/Cepis.Tests/Fixtures.cs')
| -rw-r--r-- | tests/Cepis.Tests/Fixtures.cs | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/tests/Cepis.Tests/Fixtures.cs b/tests/Cepis.Tests/Fixtures.cs new file mode 100644 index 0000000..648f881 --- /dev/null +++ b/tests/Cepis.Tests/Fixtures.cs @@ -0,0 +1,69 @@ +namespace Cepis.Tests; + +/// <summary>Bodies the API really returns, copied from it.</summary> +public static class Fixtures +{ + /// <summary>A CEP with a street-precision coordinate.</summary> + public const string SeAddress = """ + {"cep":"01001000","logradouro":"Praça da Sé","complemento":"lado ímpar", + "unidade":"","bairro":"Sé","localidade":"São Paulo","uf":"SP", + "estado":"São Paulo","regiao":"Sudeste","ibge":"3550308","gia":"1004", + "ddd":"11","siafi":"7107", + "geo":{"lat":-23.567202,"lon":-46.649659,"raio_m":1084,"precisao":"logradouro"}} + """; + + /// <summary>A CEP the database has no coordinate for.</summary> + public const string NoGeoAddress = """ + {"cep":"20040020","logradouro":"Avenida Rio Branco","complemento":"", + "unidade":"","bairro":"Centro","localidade":"Rio de Janeiro","uf":"RJ", + "estado":"Rio de Janeiro","regiao":"Sudeste","ibge":"3304557","gia":"", + "ddd":"21","siafi":"6001"} + """; + + /// <summary>A coordinate whose numbers cannot be read.</summary> + public const string BrokenGeoAddress = """ + {"cep":"01001000","logradouro":"Praça da Sé","complemento":"","unidade":"", + "bairro":"Sé","localidade":"São Paulo","uf":"SP","estado":"São Paulo", + "regiao":"Sudeste","ibge":"3550308","gia":"1004","ddd":"11","siafi":"7107", + "geo":{"lat":"nowhere","precisao":"logradouro"}} + """; + + /// <summary>A response carrying a field this library does not model.</summary> + public const string FutureAddress = """ + {"cep":"01001000","logradouro":"Praça da Sé","complemento":"","unidade":"", + "bairro":"Sé","localidade":"São Paulo","uf":"SP","estado":"São Paulo", + "regiao":"Sudeste","ibge":"3550308","gia":"1004","ddd":"11","siafi":"7107", + "cep_pai":"01000000"} + """; + + /// <summary>The 404 body.</summary> + public const string NotFound = + """{"erro":"cep_nao_encontrado","mensagem":"CEP não existe na base do DNE"}"""; + + /// <summary>The 400 body.</summary> + public const string InvalidCep = + """{"erro":"cep_invalido","mensagem":"CEP deve ter 8 dígitos"}"""; + + /// <summary>The 500 body.</summary> + public const string InternalError = """{"erro":"interno","mensagem":"falha interna"}"""; + + /// <summary>A healthy API.</summary> + public const string Healthy = """ + {"status":"ok","dne":"26071","ceps":1596168,"geo":894489, + "base_gerada_em":"2026-07-24T03:48:28Z"} + """; + + /// <summary>The batch header row.</summary> + public const string CsvHeader = + "cep,logradouro,complemento,unidade,bairro,localidade,uf,estado,regiao,ibge,gia,ddd,siafi"; + + /// <summary>Three CEPs, the middle one absent from the database.</summary> + public const string CsvBatch = CsvHeader + "\n" + + "01001000,Praça da Sé,lado ímpar,,Sé,São Paulo,SP,São Paulo,Sudeste,3550308,1004,11,7107\n" + + "99999999,,,,,,,,,,,,\n" + + "20040020,Avenida Rio Branco,,,Centro,Rio de Janeiro,RJ,Rio de Janeiro,Sudeste,3304557,,21,6001\n"; + + /// <summary>One data row for a CEP, in the batch's column order.</summary> + public static string CsvRow(string cep) => + $"{cep},Rua Teste,,,Centro,Cidade,SP,São Paulo,Sudeste,3550308,,11,7107"; +} |