public async Task <ActionResult <IEnumerable <decimal> > > Get(decimal valorInicial, int meses)
        {
            var service      = new JurosService();
            var _taxaDeJuros = await RetornarTaxaJuros();

            var _valorTaxaDeJuros = StringToDecimal(_taxaDeJuros);

            return(Ok(service.CalcularJuros(valorInicial, _valorTaxaDeJuros, meses)));
        }
Exemple #2
0
        public void TestaMetodolcularMesesInalido()
        {
            List <ResponseModel> atual    = new List <ResponseModel>();
            List <ResponseModel> esperada = new List <ResponseModel>();

            var servico   = new JurosService();
            var resultado = servico.CalcularJuros(1, 0);

            atual.Add(resultado);

            ResponseModel saida = ResponseModel.Factory.Create(false, "", "Meses deve ser maior que zero.");

            esperada.Add(saida);

            esperada.Should().BeEquivalentTo(atual);
        }
Exemple #3
0
        public void TestaMetodolcularJurosValido()
        {
            List <ResponseModel> atual    = new List <ResponseModel>();
            List <ResponseModel> esperada = new List <ResponseModel>();

            var servico   = new JurosService();
            var resultado = servico.CalcularJuros(1, 12);

            atual.Add(resultado);

            ResponseModel saida = ResponseModel.Factory.Create(true, "1,12", "");

            esperada.Add(saida);

            esperada.Should().BeEquivalentTo(atual);
        }
        public void CalcularJuros_ParametroValorIncialInvalido_GravarNotificacao()
        {
            Business.Models.Juros       juros = DataCreatorJuros.PreencherEntidadeComValorInicialInvalido();
            Task <Business.Models.Taxa> taxa  = DataCreatorJuros.PreencherTaxaComValorValido();

            LogicCreatorJuros Creator = new LogicCreatorJuros()
                                        .ComStubObterTaxaJurosAtual(taxa);

            JurosService Logic = Creator.Instanciar();

            var resultado = Logic.CalcularJuros(juros);

            Creator._taxaService.Verify(p => p.ObterTaxaJurosAtual(), Times.Once);
            Creator._notificacao.Verify(p => p.Handle(It.IsAny <Notificacao>()), Times.Once);

            Assert.True(resultado.Result == null);
        }
        public void CalcularJuros_ParametrosValidos_DeveCalcular()
        {
            Business.Models.Juros       juros = DataCreatorJuros.PreencherEntidadeComValoresValidos();
            Task <Business.Models.Taxa> taxa  = DataCreatorJuros.PreencherTaxaComValorValido();

            LogicCreatorJuros Creator = new LogicCreatorJuros()
                                        .ComStubObterTaxaJurosAtual(taxa);

            JurosService Logic = Creator.Instanciar();

            var resultado = Logic.CalcularJuros(juros);

            var valorFinal = juros.ValorInicial * Convert.ToDecimal(Math.Pow((Convert.ToDouble(taxa.Result.ValorTaxa) + 1), juros.Meses));

            Creator._taxaService.Verify(p => p.ObterTaxaJurosAtual(), Times.Once);
            Creator._notificacao.Verify(p => p.Handle(It.IsAny <Notificacao>()), Times.Never);

            Assert.False(resultado.Result == null);
            Assert.Equal(valorFinal, resultado.Result.ValorFinal);
        }
Exemple #6
0
        public void RetornoSeraValido(decimal valorInicial, decimal valorDeJuros, int tempo, Type retornoEsperado)
        {
            var valorCalculado = _service.CalcularJuros(valorInicial, valorDeJuros, tempo);

            Assert.That(valorCalculado, Is.TypeOf(retornoEsperado));
        }