public Task <IEnumerable <EmployeeResponse> > ListCalculationIR(decimal minimumWage) { InputForTaxRule inputForTaxRule = new InputForTaxRule(minimumWage); var employees = _unitOfWork.EmployeeRepository.GetAllAsync().Result; var employeesTax = employees.Select(x => inputForTaxRule.CalculateTaxpayer(x)); var result = employeesTax.OrderBy(x => x.ValueTaxIR).ThenBy(x => x.Name).ToList(); return(Task.FromResult(result.Select(p => p.ConvertToResponse()))); }
public void CalculateValueTaxIr_Rule4_IsSucess() { var minimumWage = 1000M; var netSalary = 5100M; var inputForTaxRule = new InputForTaxRule(minimumWage); var expected = 1147.500M; var result = inputForTaxRule.CalculateValueTaxIr(netSalary); Assert.IsType <decimal>(minimumWage); Assert.IsType <decimal>(netSalary); Assert.IsType <InputForTaxRule>(inputForTaxRule); Assert.IsType <decimal>(expected); Assert.Equal(expected, result); }
public void CalculateNetSalary_WithDependents_IsSucess() { var minimumWage = 954M; Employee employee = new Employee("448.028.616-05", "Patricia", 2000, 2); var inputForTaxRule = new InputForTaxRule(minimumWage); var expected = 1904.6M; var result = inputForTaxRule.CalculateNetSalary(employee); Assert.IsType <Employee>(employee); Assert.IsType <decimal>(minimumWage); Assert.IsType <InputForTaxRule>(inputForTaxRule); Assert.IsType <decimal>(expected); Assert.Equal(expected, result); }