public void Put()
        {
            var repository = new Mock<IRepository<Employee>>();
            var controller = new EmployeeController(repository.Object);
            var employee = new Employee();

            repository.Setup(x => x.SaveOrUpdate(employee));
            controller.Put(employee);

            repository.Verify();
        }
        public void CalculateWhenEmployee()
        {
            var calculator = new InitialCostCalculator();
            var employee = new Employee {
                InitialCostOfBenefits = 2323
            };

            var actual = calculator.Calculate(employee);

            Assert.AreEqual(employee.InitialCostOfBenefits, actual);
        }
        public void GetById()
        {
            var repository = new Mock<IRepository<Employee>>();
            var controller = new EmployeeController(repository.Object);
            var employeeId = 1;
            var expected = new Employee();

            repository.Setup(x => x.Find(employeeId)).Returns(expected);
            var actual = controller.Get(employeeId);

            Assert.AreEqual(expected, actual);
        }
        public void Calculate()
        {
            var calculator = new GrossSalaryPerPayPeriodCalculator();
            var employee = new Employee {
                PayPeriods = 10,
                Salary = 10
            };

            var actual = calculator.Calculate(employee);

            Assert.AreEqual(1, actual);
        }
        public void CalculateForEmployee(string name, double expected)
        {
            var calculator = new NameStartsWithLetterADiscountCalculator();
            var employee = new Employee {
                Name = name,
                InitialCostOfBenefits = 100,
                NameStartsWithLetterADiscountRate = .10
            };

            var actual = calculator.Calculate(employee);

            Assert.AreEqual(expected, actual);
        }
        public void Calculate()
        {
            var costPerPayPeriodCalculator = new Mock<ICostPerPayPeriodCalculator>();
            var salaryPerPayPeriodCalculator= new Mock<IGrossSalaryPerPayPeriodCalculator>();
            var calculator = new NetSalaryPerPayPeriodCalculator(costPerPayPeriodCalculator.Object, salaryPerPayPeriodCalculator.Object);
            var employee = new Employee();

            costPerPayPeriodCalculator.Setup(x => x.Calculate(employee)).Returns(5);
            salaryPerPayPeriodCalculator.Setup(x => x.Calculate(employee)).Returns(20);
            var actual = calculator.Calculate(employee);

            Assert.AreEqual(15, actual);
        }
        public void CalculatorForEmployee()
        {
            var totalDependentCostCalculator = new Mock<ITotalDependentCostCalculator>();
            var calculator = new DependentCostPerPayPeriodCalculator(totalDependentCostCalculator.Object);
            var employee = new Employee {
                PayPeriods = 20
            };

            totalDependentCostCalculator.Setup(x => x.Calculate(employee)).Returns(100);
            var actual = calculator.Calculate(employee);

            Assert.AreEqual(5, actual);
        }
        public void Calculate()
        {
            var initialCostCalculator = new Mock<IInitialCostCalculator>();
            var dependentCostCalculator = new Mock<ITotalDependentCostCalculator>();
            var nameDiscountCalculator = new Mock<INameStartsWithLetterADiscountCalculator>();
            var calculator = new TotalCostCalculator(initialCostCalculator.Object, dependentCostCalculator.Object, nameDiscountCalculator.Object);
            var employee = new Employee();

            initialCostCalculator.Setup(x => x.Calculate(employee)).Returns(1);
            dependentCostCalculator.Setup(x => x.Calculate(employee)).Returns(2);
            nameDiscountCalculator.Setup(x => x.Calculate(employee)).Returns(3);
            var actual = calculator.Calculate(employee);

            Assert.AreEqual(6, actual);
        }
 public double Calculate(Employee employee)
 {
     return employee.Salary / employee.PayPeriods;
 }
 public double Calculate(Employee employee)
 {
     return CalculateDiscount(employee.Name, employee.NameStartsWithLetterADiscountRate, employee.InitialCostOfBenefits);
 }
 public double Calculate(Employee employee)
 {
     return totalCostCalculator.Calculate(employee) / employee.PayPeriods;
 }
 public void UpdateEmployee(Employee emp)
 {
     Repo.GetEmployeeRepository().SaveOrUpdate(emp);
 }
 public int CreateEmployee(Employee emp)
 {
     return Repo.GetEmployeeRepository().Create(emp);
 }
Example #14
0
 public double Calculate(Employee employee)
 {
     return initialCostCalculator.Calculate(employee)
         + _totalDependentCostCalculator.Calculate(employee)
         + nameStartsWithLetterADiscountCalculator.Calculate(employee);
 }
Example #15
0
 public void Put(Employee employee)
 {
     repository.SaveOrUpdate(employee);
 }
Example #16
0
 public double Calculate(Employee employee)
 {
     return employee.InitialCostOfBenefits;
 }