public void CalcularJuros_ValorAltoTest()
        {
            var jurosService = new CalcularJurosService(null);

            short   nroMeses     = 90;
            decimal valorInicial = 100;
            decimal taxaJuros    = 900M;

            Assert.ThrowsExceptionAsync <ApplicationException>(() => jurosService.CalcularJuros(nroMeses, valorInicial, taxaJuros));
        }
        public void CalcularJuros_ValorTruncadoTest()
        {
            var jurosService = new CalcularJurosService(null);

            short   nroMeses     = 9;
            decimal valorInicial = 100M;
            decimal taxaJuros    = 0.01M;

            var result = jurosService.CalcularJuros(nroMeses, valorInicial, taxaJuros).Result;

            Assert.AreEqual(109.36M, result);
        }
        public void CalcularJuros_ValorInicialZeradoTest()
        {
            var jurosService = new CalcularJurosService(null);

            short   nroMeses     = 10;
            decimal valorInicial = 0M;
            decimal taxaJuros    = 0.09M;

            var result = jurosService.CalcularJuros(nroMeses, valorInicial, taxaJuros).Result;

            Assert.AreEqual(0M, result);
        }
        public void CalcularJuros_ResultadoEsperadoTest()
        {
            var jurosService = new CalcularJurosService(null);

            short   nroMeses     = 5;
            decimal valorInicial = 100;
            decimal taxaJuros    = 0.01M;

            var result = jurosService.CalcularJuros(nroMeses, valorInicial, taxaJuros).Result;

            Assert.AreEqual(105.10M, result);
        }
        public void Deve_calcular_o_juros(decimal valorInicial, int meses, decimal resultadoEsperado)
        {
            var resultado = new CalcularJurosService().Calcular(valorInicial, meses);

            resultado.Should().Be(resultadoEsperado);
        }
 public CalcularJurosServiceTests()
 {
     _api1ServiceMock.Setup(x => x.ObterTaxaDeJurosAsync()).Returns(Task.FromResult(0.01m));
     _service = new CalcularJurosService(_api1ServiceMock.Object);
 }