Esempio n. 1
0
        public void Calcula_folha_mensal()
        {
            var contrato = CenarioContrato.CrieCenarioConsistente(1000);
            var calculo  = new CalculoFolhaMensal(DateTime.Now);
            var result   = calculo.Calcule(contrato);

            Assert.True(result.ExisteValores);
            new ValorComponenteCalculo(925).Should().Be(result.Valor(EnumComponentesCalculo.SalarioLiquido));
        }
Esempio n. 2
0
        public void ObterValorTest(double valor)
        {
            var inss   = new INSSComponenteDeCalculo();
            var tabela = new ComponentesCalculados(CenarioContrato.CrieCenarioConsistente(valor), DateTime.Now);

            tabela.AdicioneValor(inss, (ValorComponenteCalculo)valor);
            tabela.AdicioneValor(new FGTSComponenteCalculo(), (ValorComponenteCalculo)valor);
            Assert.Equal((ValorComponenteCalculo)valor, tabela.Valor(EnumComponentesCalculo.FGTS));
        }
        public void Calcule(double salario, double result)
        {
            var contrato = CenarioContrato.CrieCenarioConsistente(salario);
            var tabela   = new ComponentesCalculados(contrato, DateTime.Now);

            tabela.AdicioneValor(new BaseSalarioComponenteCalculo(), (ValorComponenteCalculo)salario);
            var componente     = new FGTSComponenteCalculo();
            var valorCalculado = componente.Calcule(contrato, tabela);

            Assert.Equal((ValorComponenteCalculo)result, valorCalculado);
        }
Esempio n. 4
0
        private void CalculeBenchmark()
        {
            var contrato  = CenarioContrato.CrieCenarioConsistente(1000);
            var calculo   = new CalculoFolhaFerias(DateTime.Now);
            var execucoes = 5_00_000;

            while (execucoes > 0)
            {
                calculo.Calcule(contrato);
                execucoes--;
            }
        }
Esempio n. 5
0
        public void AdicioneValor(double valor, bool result)
        {
            var contrato = CenarioContrato.CrieCenarioConsistente(valor);
            var inss     = new INSSComponenteDeCalculo();
            var tabela   = new ComponentesCalculados(contrato, new DateTime(2020, 1, 1));

            tabela.AdicioneValor(inss, (ValorComponenteCalculo)valor);
            Assert.True(tabela.ExisteValores == result);
            Assert.Equal(new DateTime(2020, 1, 1), tabela.Referencia);
            Assert.Equal(contrato.IdColaborador, tabela.IdColaborador);
            Assert.Equal(contrato.IdContrato, tabela.IdContrato);
            Assert.True(tabela.Valores.Count > 0 == result);
        }
Esempio n. 6
0
        public void Calcule(double salarioContratual,
                            double inss,
                            double irrf,
                            double result)
        {
            var tabela = new ComponentesCalculados(null, DateTime.Now);

            tabela.AdicioneValor(new BaseSalarioComponenteCalculo(), (ValorComponenteCalculo)salarioContratual);
            tabela.AdicioneValor(new INSSComponenteDeCalculo(), (ValorComponenteCalculo)inss);
            tabela.AdicioneValor(new IRRFComponenteDeCalculo(), (ValorComponenteCalculo)irrf);
            var contrato       = CenarioContrato.CrieCenarioConsistente(salarioContratual);
            var compomente     = new SalarioLiquidoComponenteDeCalculo();
            var valorCalculado = compomente.Calcule(contrato, tabela);

            Assert.Equal(result, valorCalculado.Valor);
        }