public void EmployeeOnlyWithDiscount() { var emp = new EmployeeFactory().CreateEmployee(52000, 26); emp.FirstName = "Aaron"; var b = new BenefitCalculatorService(new NameDiscountPolicy()); var p = new PaycheckCalculatorService(b); p.Calculate(emp); Assert.AreEqual(emp.PayCheck.GrossAmount, 2000); Assert.AreEqual(emp.PayCheck.NetAmount, 1965.38M); Assert.AreEqual(emp.PayCheck.Deductions.Count, 1); Assert.AreEqual(emp.PayCheck.Deductions["Benefits"], 34.62M); }
public void EmployeeWithDependentWithDiscount() { var emp = new EmployeeFactory().CreateEmployee(52000, 26); emp.FirstName = "Aaron"; emp.Dependents.Add(new DependentFactory().CreateDependent("Allison", "Smith")); var b = new BenefitCalculatorService(new NameDiscountPolicy()); var p = new PaycheckCalculatorService(b); p.Calculate(emp); Assert.AreEqual(emp.PayCheck.GrossAmount, 2000); Assert.AreEqual(emp.PayCheck.NetAmount, 1948.08M); Assert.AreEqual(emp.PayCheck.Deductions.Count, 1); Assert.AreEqual(emp.PayCheck.Deductions["Benefits"], 51.92M); }