public async Task Get_Calcular_RetornaDouble() { var consultaJuros = new ConsultaJurosMock(0.01); ICalculoJurosComposto calculoJuro = new CalculoJurosComposto(consultaJuros, 200, 10); var valor = await calculoJuro.Calcular(); Assert.Equal <double>(220.92, valor); }
public async Task Get_CalcularJuro_RetornaDouble() { double taxa = 0.53; double valorInicial = 200.7; int meses = 10; JurosCompostos jurosCompostos = new JurosCompostos(valorInicial, meses, taxa); var consultaJuros = new ConsultaJurosMock(taxa); CalculoJurosComposto calculoJuro = new CalculoJurosComposto(consultaJuros, valorInicial, meses); var valor = calculoJuro.CalcularJuroComposto(jurosCompostos); Assert.Equal <double>(14107.87, valor); }
public async Task Get_RetornarTaxaJuro_RetornaDouble() { double taxa = 0.53; double valorInicial = 200.7; int meses = 10; var consultaJuros = new ConsultaJurosMock(taxa); CalculoJurosComposto calculoJuro = new CalculoJurosComposto(consultaJuros, valorInicial, meses); JurosCompostos jurosCompostos = await calculoJuro.RetornarTaxaJuros(); Assert.Equal <double>(valorInicial, jurosCompostos.ValorInicial); Assert.Equal <int>(meses, jurosCompostos.Meses); Assert.Equal <double>(taxa, jurosCompostos.TaxaJuros); }
public async Task <ActionResult> GetCalculaJuros([FromServices] IConsultaJuros consultaJuros, [FromQuery] double ValorInicial, int Meses) { try { if (ValorInicial <= 0 || Meses <= 0) { return(BadRequest("Requisição com parâmetros inválidos. Esperado o seguinte formato: /calculajuros?valorinicial=100&meses=5")); } var calculoJurosComposto = new CalculoJurosComposto(consultaJuros, ValorInicial, Meses); var juros = await calculoJurosComposto.Calcular(); return(Ok(string.Format("{0:0,0.00}", juros))); } catch (Exception ex) { Console.WriteLine("-----------Começa EXCEÇÃO------------"); Console.WriteLine(ex.GetType().FullName); Console.WriteLine(ex.ToString()); Console.WriteLine("-----------Termina EXCEÇÃO------------"); return(StatusCode(StatusCodes.Status500InternalServerError, "Erro ao calcular juros.")); } }