Open rafd75 opened 6 years ago
Estou com esse mesmo problema.
@thiagosoeiro , boa tarde.
Eu ajustei o código do teste para esse: (aqui localmente)
public void GeracaoCorretaDeFatorVencimento()
{
var inicio = new DateTime(1997, 10, 07, 0, 0, 0);
var ajusteRange = (DateTime.Now - inicio).Days - 3000;
inicio = inicio.AddDays(ajusteRange);
var totalDiasAnalisados = 25000;
var fim = inicio.AddDays(totalDiasAnalisados);
for (int i = 0; i < totalDiasAnalisados; i++)
{
var fatorVencimento = ajusteRange + i;
var dateTime = inicio.AddDays(i);
Assert.AreEqual(fatorVencimento, dateTime.FatorVencimento());
if (fatorVencimento == 9999)
ajusteRange = 999-i;
}
Assert.AreEqual(1000, fim.AddDays(1).FatorVencimento());
Assert.AreEqual(1001, fim.AddDays(2).FatorVencimento());
}
resolveu uma parte... se rodar esse teste, vai quebrar dentro do projeto mesmo. Olhando por cima, a função FatorVencimento (Classe DateTimeExtension.cs) tem "fixo" a data base de 07/10/1997 e por isso, quebra em 08/08/2033 (quando o range sai fora do esperado).
Eu parei por ai, não quis mudar a função, pois queria ler a documentação antes... mas no "chute", acredito que, para a data 08/08/2033, a data base não pode ser 07/10/1997, já que o range sai fora do limite definido pela febraban...
Atualiza sua versão (do teste) com essa função acima, e me diga se estou certo no que escrevi...
Então, temos duas saídas.... Limitar o teste até 07/08/2033 e deixar o problema lá para frente, ou adequar a função FatorVencimento...
Limitar o teste em 07/08/2033 parece ser mais fácil e menos arriscado.
Bom dia...
Estou executando os testes do projeto, e o método GeracaoCorretaDeFatorVencimento() (arquivo FatorVencimento.cs - projeto de testes) está falhando...
O teste falha -> Mensagem: System.Exception : Data do vencimento fora do range de utilização proposto pela CENEGESC. Comunicado FEBRABAN de n° 082/2012 de 14/06/2012 - A exceção está sendo disparada na função de extensão FatorVencimento (arquivo DateTimeExtensions.cs)
Para ajudar no diagnóstivo, alterei a mensagem para identificar a data que está dando erro -> Data do vencimento (31/01/2010 00:00:00) fora do range (-3034) de utilização proposto pela CENEGESC. Comunicado FEBRABAN de n° 082/2012 de 14/06/2012
No método de extensão, o aceitável é seria rangeUtilizavel > 5500 || rangeUtilizavel < -3000
Alguém com esse mesmo problema ai?
Obs: A data do computador aqui está OK - 23/05/2018...