public CalculaJurosDTO CalculaJuros(CalculaJurosParametro param) { CalculaJurosDTO calculo; try { TaxaJuros(); if (param.ValorInicial > 0 && param.Meses > 0) { decimal valorCalculado = Pow(param.ValorInicial * (1 + Convert.ToDecimal(taxaJuros.TaxaJuros)), (uint)param.Meses); calculo = new CalculaJurosDTO() { ValorFinal = Math.Truncate(100 * valorCalculado) / 100 }; } else { throw new Exception("Os parâmetros ValorInicial e Meses são obrigatórios!"); } return(calculo); } catch (Exception ex) { throw new Exception(ex.Message); } }
public void CalculaJurosParametroMesesNulo() { CalculaJurosParametro taxaJuros = new CalculaJurosParametro() { ValorInicial = 100 }; CalculaJurosServices objCalculaJuros = new CalculaJurosServices(); Assert.Throws <Exception>(() => objCalculaJuros.CalculaJuros(taxaJuros)); }
public void ValidaTipoGetCalculaJuros() { CalculaJurosParametro taxaJuros = new CalculaJurosParametro() { ValorInicial = 100, Meses = 5 }; CalculaJurosServices objCalculaJuros = new CalculaJurosServices(); Assert.IsType <CalculaJurosDTO>(objCalculaJuros.CalculaJuros(taxaJuros)); }
public void CalculaJuros() { CalculaJurosParametro taxaJuros = new CalculaJurosParametro() { ValorInicial = 100, Meses = 5 }; CalculaJurosDTO retorno = new CalculaJurosDTO() { ValorFinal = 10510100501 }; CalculaJurosServices objCalculaJuros = new CalculaJurosServices(); Assert.Equal(retorno.ValorFinal, objCalculaJuros.CalculaJuros(taxaJuros).ValorFinal); }
public void GetTaxaJurosComMoq() { var calculo = new Mock <IServiceCalculaJuros>(MockBehavior.Strict); CalculaJurosParametro taxaJuros = new CalculaJurosParametro() { ValorInicial = 100, Meses = 5 }; CalculaJurosDTO retorno = new CalculaJurosDTO() { ValorFinal = 10510100501 }; calculo.Setup(w => w.CalculaJuros(taxaJuros)).Returns(() => retorno); Assert.Equal <CalculaJurosDTO>(retorno, calculo.Object.CalculaJuros(taxaJuros)); }
public IActionResult CalculaJuros([FromQuery(Name = "valorInicial")] decimal valorInicial, [FromQuery(Name = "meses")] int meses) { try { if (valorInicial > 0 && meses > 0) { CalculaJurosParametro param = new CalculaJurosParametro() { ValorInicial = valorInicial, Meses = meses }; var juros = this._service.CalculaJuros(param); return(Ok(juros)); } return(BadRequest("Os parâmetros ValorInicial e Meses são obrigatórios!")); } catch (Exception ex) { return(BadRequest(ex)); } }
public void Save(CalculaJurosParametro juros) { throw new NotImplementedException(); }