/// <summary> /// Initializes a new instance of the <see cref="PaySlip"/> class. /// </summary> /// <param name="employee">The employee.</param> /// <param name="salaryperiod">The salaryperiod.</param> /// <param name="grossIncome">The gross income.</param> /// <param name="incomeTax">The income tax.</param> /// <param name="superRate">The super rate.</param> public PaySlip(Employee employee, SalarySlipPeriod salaryperiod, Amount grossIncome, Amount incomeTax, Amount superRate) { this.Employee = employee; this.SalaryPeriod = salaryperiod; this.GrossIncome = grossIncome; this.IncomeTax = incomeTax; this.SuperValue = GrossIncome * Amount.Percentage(superRate); }
/// <summary> /// Gets the pay slip. /// </summary> /// <param name="employeeSalary">The employee salary.</param> /// <param name="incomeTax">The income tax.</param> /// <param name="paymentStarPeriod">The payment star period.</param> /// <returns></returns> public PaySlip GetPaySlip(EmployeeSalary employeeSalary, IncomeTax incomeTax, SalarySlipPeriod paymentStarPeriod) { return(new PaySlip( employeeSalary.Employee, paymentStarPeriod, employeeSalary.AnualSalary / Month, incomeTax.Tax / Month, employeeSalary.SuperRate )); }
public void SalarySlipPeriod_ToString_Test() { var result = new SalarySlipPeriod("01 March - 31 March"); Assert.IsTrue(result.ToString().CompareTo("01 March - 31 March") == 0); }
public void SalarySlipPeriod_InvalidDate_Test2() { var result = new SalarySlipPeriod("31Test"); }
public void SalarySlipPeriod_InvalidOperationException_Test2() { var result = new SalarySlipPeriod("31 Feb- 31 Feb"); }
public void SalarySlipPeriod_ArugumentNullException_Test() { var result = new SalarySlipPeriod(string.Empty); }
public void SalarySlipPeriod_DateMonthDateMonth_Format_Test() { var result = new SalarySlipPeriod("01 March - 31 March"); Assert.IsNotNull(result); }