示例#1
0
        public void TestCalcularParcela()
        {
            try
            {
                CalculadorRepository rep     = new CalculadorRepository();
                CalculaParcela       parcela = new CalculaParcela
                {
                    Prazo = 5,
                    Valor = 100
                };

                var resultado = rep.Calcular(Juros.Taxa, parcela);

                Assert.IsTrue(resultado > 100);
            }
            catch (Exception e)
            {
                Assert.Fail("Falha: " + e.Message);
            }
        }
        public IActionResult CalculaJuros(CalculaParcelaModel model, [FromServices] CalculadorRepository rep)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var parcela = new CalculaParcela();
                    parcela.Prazo = model.prazo;
                    parcela.Valor = model.valor;
                    var valorFinal = rep.Calcular(Juros.Taxa, parcela);

                    return(Ok(valorFinal.ToString("F")));
                }
                catch (Exception e)
                {
                    return(StatusCode(500, e.Message));
                }
            }
            else
            {
                return(BadRequest("Ocorreram erros de validação"));
            }
        }
        public double Calcular(Double juros, CalculaParcela parcela)
        {
            var valorFinal = parcela.Valor * Math.Pow(1 + juros, parcela.Prazo);

            return(valorFinal);
        }