public void TaxSlab_18k_0() { EmployeeSalaryDetail empTestCase = new EmployeeSalaryDetail(new PaySlip()); EmployeeSalaryDetailModel requestModel = new EmployeeSalaryDetailModel(); requestModel.FirstName = "Andrew"; requestModel.LastName = "Smith"; requestModel.AnnualSalary = 0; requestModel.SuperRate = 9; requestModel.PaymentStartDate = "01 March – 31 March"; EmployeeSalaryDetailDTO response = empTestCase.GetEmployeeSalaryDetaill(requestModel); Assert.AreEqual(null, response); }
public void TaxSlab_180k_120k() { EmployeeSalaryDetail empTestCase = new EmployeeSalaryDetail(new PaySlip()); EmployeeSalaryDetailModel requestModel = new EmployeeSalaryDetailModel(); requestModel.FirstName = "Claire"; requestModel.LastName = "Wong"; requestModel.AnnualSalary = 120000; requestModel.SuperRate = 10; requestModel.PaymentStartDate = "01 March – 31 March"; EmployeeSalaryDetailDTO response = empTestCase.GetEmployeeSalaryDetaill(requestModel); Assert.AreEqual(10000, response.GrossIncome); Assert.AreEqual(2669, response.IncomeTax); Assert.AreEqual(7331, response.NetIncome); Assert.AreEqual(1000, response.SuperAmount); }
public void TaxSlab_87k_60k() { EmployeeSalaryDetail empTestCase = new EmployeeSalaryDetail(new PaySlip()); EmployeeSalaryDetailModel requestModel = new EmployeeSalaryDetailModel(); requestModel.FirstName = "Andrew"; requestModel.LastName = "Smith"; requestModel.AnnualSalary = 60050; requestModel.SuperRate = 9; requestModel.PaymentStartDate = "01 March – 31 March"; EmployeeSalaryDetailDTO response = empTestCase.GetEmployeeSalaryDetaill(requestModel); Assert.AreEqual(5004, response.GrossIncome); Assert.AreEqual(922, response.IncomeTax); Assert.AreEqual(4082, response.NetIncome); Assert.AreEqual(450, response.SuperAmount); }
public void TaxSlab_37k_25k() { EmployeeSalaryDetail empTestCase = new EmployeeSalaryDetail(new PaySlip()); EmployeeSalaryDetailModel requestModel = new EmployeeSalaryDetailModel(); requestModel.FirstName = "Andrew"; requestModel.LastName = "Smith"; requestModel.AnnualSalary = 25000; requestModel.SuperRate = 9; requestModel.PaymentStartDate = "01 March – 31 March"; EmployeeSalaryDetailDTO response = empTestCase.GetEmployeeSalaryDetaill(requestModel); Assert.AreEqual(2083, response.GrossIncome); Assert.AreEqual(108, response.IncomeTax); Assert.AreEqual(1975, response.NetIncome); Assert.AreEqual(187, response.SuperAmount); }
public EmployeeSalaryDetailDTO GetEmployeeSalaryDetaill(EmployeeSalaryDetailModel Requestmodel) { EmployeeSalaryDetailDTO response = null; try { if (Requestmodel.AnnualSalary > 0) { response = new EmployeeSalaryDetailDTO(); response.Name = string.Format("{0} {1}", Requestmodel.FirstName, Requestmodel.LastName); response.GrossIncome = Math.Round(_paySlip.GrossInCome(Requestmodel.AnnualSalary)); response.IncomeTax = Math.Round(_paySlip.TotalIncomeTax(Requestmodel.AnnualSalary)); response.PayPeriod = Requestmodel.PaymentStartDate; response.NetIncome = Math.Round(response.GrossIncome - response.IncomeTax); response.SuperAmount = Requestmodel.SuperRate > 0 ? Math.Round(response.GrossIncome * Requestmodel.SuperRate / 100) : 0; } } catch (Exception) { throw; } return(response); }