Esempio n. 1
0
        public void CalcularImpostoRendaValoresIguais()
        {
            //Arrange
            var contribuintes = new List <Contribuinte>()
            {
                new Contribuinte("066.349.687-05", "Valentina Sophia Teixeira", 0, 2600),
                new Contribuinte("893.888.821-56", "Tiago Juan Pietro Assunção", 0, 2600),
                new Contribuinte("329.823.847-36", "Patrícia Joana Ferreira", 0, 2600),
                new Contribuinte("048.972.533-30", "Mário Thomas Isaac Martins", 0, 2600),
                new Contribuinte("889.218.837-20", "Fábio Theo Silva", 0, 2600),
                new Contribuinte("443.527.675-57", "Milena Isis Baptista", 0, 2600),
                new Contribuinte("230.434.267-11", "Marcos Pedro Henrique Henrique Baptista", 0, 2600),
            };

            _contribuinteRepository.GetAll().Returns(contribuintes);
            var service       = new ContribuinteService(_mapper, _contribuinteRepository, _mediator);
            var salarioMinimo = 954m;
            var valorImposto  = 195m;
            //Act
            var contribuintesRetorno = service.CalcularImpostoDeRenda(salarioMinimo);

            //Assert
            contribuintesRetorno.Should().BeInAscendingOrder(x => x.Nome);
            contribuintesRetorno.Should().Match(x => x.All(c => c.ValorImpostoRenda == valorImposto));
        }
Esempio n. 2
0
        public void CalcularImpostoRendaVariasAliquotas()
        {
            //Arrange
            var contribuintes = new List <Contribuinte>()
            {
                new Contribuinte("066.349.687-05", "Valentina Sophia Teixeira", 0, 4293),
                new Contribuinte("893.888.821-56", "Tiago Juan Pietro Assunção", 0, 1683.56m),
                new Contribuinte("329.823.847-36", "Patrícia Joana Ferreira", 4, 6700),
                new Contribuinte("048.972.533-30", "Mário Thomas Isaac Martins", 0, 8765),
                new Contribuinte("889.218.837-20", "Fábio Theo Silva", 0, 5724),
                new Contribuinte("443.527.675-57", "Milena Isis Baptista", 0, 1958.47m),
                new Contribuinte("230.434.267-11", "Marcos Pedro Henrique Henrique Baptista", 4, 6700),
            };

            _contribuinteRepository.GetAll().Returns(contribuintes);
            var service       = new ContribuinteService(_mapper, _contribuinteRepository, _mediator);
            var salarioMinimo = 954m;
            //Act
            var contribuintesRetorno = service.CalcularImpostoDeRenda(salarioMinimo);

            //Assert
            contribuintesRetorno.Should().BeInAscendingOrder(x => x.ValorImpostoRenda);
            contribuintesRetorno.GroupBy(x => x.ValorImpostoRenda).ToList().ForEach(x =>
            {
                x.ToList().Should().BeInAscendingOrder(c => c.Nome);
            });
        }
Esempio n. 3
0
        public void MetodoIncluir()
        {
            //Arrange
            var service         = new ContribuinteService(_mapper, _contribuinteRepository, _mediator);
            var contribuinteDTO = new ContribuinteDTO();

            //Act
            service.Incluir(contribuinteDTO);
        }
Esempio n. 4
0
        public void CalculoIncorretoRendaLiquida()
        {
            //arranjo
            double rendaBruta        = 8500;
            double salarioMinimo     = 950.18;
            double totalRendaLiquida = 8102.82;

            Contribuinte contribuinte = new Contribuinte {
                Nome = "Alfredo Menezes", CPF = "56968547785", NumeroDepentedentes = 5, RendaBrutaMensal = rendaBruta
            };

            // calcula
            ContribuinteService contribuinteService = new ContribuinteService();
            double totalRendaLiquidaEsperado        = contribuinteService.CalculaRendaLiquida(contribuinte, salarioMinimo);

            // assert
            Assert.AreEqual(totalRendaLiquidaEsperado, totalRendaLiquida, 000.1, "Calculado de Renda Liquida correto!");
        }
Esempio n. 5
0
        public void CalculoCorretoRendaLiquida()
        {
            //arranjo
            double rendaBruta        = 4528.5;
            double salarioMinimo     = 1000;
            double totalRendaLiquida = 4328.5;

            Contribuinte contribuinte = new Contribuinte {
                Nome = "Alex Souza", CPF = "12548563547", NumeroDepentedentes = 3, RendaBrutaMensal = rendaBruta
            };

            // calcula
            ContribuinteService contribuinteService = new ContribuinteService();
            double totalRendaLiquidaEsperado        = contribuinteService.CalculaRendaLiquida(contribuinte, salarioMinimo);

            // assert
            Assert.AreEqual(totalRendaLiquidaEsperado, totalRendaLiquida, 000.1, "Calculado de Renda Liquida correto!");
        }
Esempio n. 6
0
        public void CalculoIncorretoDescontoPorDependentes()
        {
            //arranjo
            double rendaBruta                  = 5590;
            double salarioMinimo               = 900;
            int    numeroDependente            = 1;
            double totalDescontoPorDependentes = 5500;
            //descontoPorDependentes - Considerando um percentual de 5% de denconto por dependentes.

            Contribuinte contribuinte = new Contribuinte {
                Nome = "Bette Almeida", CPF = "65248565547", NumeroDepentedentes = numeroDependente, RendaBrutaMensal = rendaBruta
            };

            // calcula
            ContribuinteService contribuinteService    = new ContribuinteService();
            double totalDescontoPorDependentesEsperado = contribuinteService.CalculaDescontoPorDependentes(contribuinte, salarioMinimo);

            // assert
            Assert.AreEqual(totalDescontoPorDependentesEsperado, totalDescontoPorDependentes, 000.1, "Desconto incorreto!");
        }
Esempio n. 7
0
        public void CalculoCorretoDescontoPorDependentes()
        {
            //arranjo
            double rendaBruta                  = 2500;
            double salarioMinimo               = 998;
            int    numeroDependente            = 2;
            double totalDescontoPorDependentes = 99.8;
            //descontoPorDependentes - Considerando um percentual de 5% de denconto por dependentes.

            Contribuinte contribuinte = new Contribuinte {
                Nome = "Bob Marley", CPF = "85695478523", NumeroDepentedentes = numeroDependente, RendaBrutaMensal = rendaBruta
            };

            // calcula
            ContribuinteService contribuinteService    = new ContribuinteService();
            double totalDescontoPorDependentesEsperado = contribuinteService.CalculaDescontoPorDependentes(contribuinte, salarioMinimo);

            // assert
            Assert.AreEqual(totalDescontoPorDependentesEsperado, totalDescontoPorDependentes, 000.1, "Desconto correto!");
        }
 public ContribuinteController(ContribuinteService contribuinteService)
 {
     _contribuinteService = contribuinteService;
 }