public void Employee_Between18And30YearsOld_ShouldHave80PercentOfHisGrossSalary() { var builder = new EmployeeTestBuilder(); var employee = builder .WithName("Mary") .HasAge(23) .HasGrossSalaryOf(1000) .Build(); employee.CalculateNetSalary().Should().Be(800); }
public void Employee_WithMoreThan30YearsOld_ShouldHave85PercentOfHisGrossSalary() { var builder = new EmployeeTestBuilder(); var employee = builder .WithName("Samuel") .HasAge(35) .HasGrossSalaryOf(1000) .Build(); employee.CalculateNetSalary().Should().Be(850); }
public void Employee_LessThanEighteenYearsOld_ShouldThrowExceptionOnCalculatingSalary() { var builder = new EmployeeTestBuilder(); var employee = builder .WithName("John") .HasAge(16) .HasGrossSalaryOf(1000) .Build(); Action calculateSalaryAction = () => employee.CalculateNetSalary(); calculateSalaryAction.ShouldThrow <InvalidOperationException>().WithMessage("Age less than 18"); }