Esempio n. 1
0
        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);
            }
        }
Esempio n. 2
0
        public void CalculaJurosParametroMesesNulo()
        {
            CalculaJurosParametro taxaJuros = new CalculaJurosParametro()
            {
                ValorInicial = 100
            };

            CalculaJurosServices objCalculaJuros = new CalculaJurosServices();

            Assert.Throws <Exception>(() => objCalculaJuros.CalculaJuros(taxaJuros));
        }
Esempio n. 3
0
        public void ValidaTipoGetCalculaJuros()
        {
            CalculaJurosParametro taxaJuros = new CalculaJurosParametro()
            {
                ValorInicial = 100,
                Meses        = 5
            };

            CalculaJurosServices objCalculaJuros = new CalculaJurosServices();

            Assert.IsType <CalculaJurosDTO>(objCalculaJuros.CalculaJuros(taxaJuros));
        }
Esempio n. 4
0
        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);
        }
Esempio n. 5
0
        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));
            }
        }
Esempio n. 7
0
 public void Save(CalculaJurosParametro juros)
 {
     throw new NotImplementedException();
 }