public void TestAddCommissionedEmployee() { int empId = 3; AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Justin", "Home", 2500, 9.5, database); t.Execute(); Employee e = database.GetEmployee(empId); Assert.AreEqual("Justin", e.Name); PaymentClassification pc = e.Classification; Assert.IsTrue(pc is CommissionClassification); CommissionClassification cc = pc as CommissionClassification; Assert.AreEqual(2500, cc.BaseRate, .001); Assert.AreEqual(9.5, cc.CommissionRate, .001); PaymentSchedule ps = e.Schedule; Assert.IsTrue(ps is BiWeeklySchedule); PaymentMethod pm = e.Method; Assert.IsTrue(pm is HoldMethod); }
public void TestSalesReceiptTransaction() { int empId = 5; AddCommissionedEmployee t = new AddCommissionedEmployee( empId, "Bill", "Home", 2000, 15.25, database); t.Execute(); SalesReceiptTransaction tct = new SalesReceiptTransaction( new DateTime(2005, 7, 31), 250.00, empId, database); tct.Execute(); Employee e = database.GetEmployee(empId); Assert.IsNotNull(e); PaymentClassification pc = e.Classification; Assert.IsTrue(pc is CommissionClassification); CommissionClassification cc = pc as CommissionClassification; SalesReceipt sr = cc.GetSalesReceipt(new DateTime(2005, 7, 31)); Assert.IsNotNull(sr); Assert.AreEqual(250.00, sr.SaleAmount, .001); }
public void TestChangeCommisionTransaction() { int empId = 5; AddSalariedEmployee t = new AddSalariedEmployee( empId, "Bob", "Home", 2500.00, database); t.Execute(); ChangeCommissionedTransaction cht = new ChangeCommissionedTransaction(empId, 1250.00, 5.6, database); cht.Execute(); Employee e = database.GetEmployee(empId); Assert.IsNotNull(e); PaymentClassification pc = e.Classification; Assert.IsNotNull(pc); Assert.IsTrue(pc is CommissionClassification); CommissionClassification cc = pc as CommissionClassification; Assert.AreEqual(1250.00, cc.BaseRate, .001); Assert.AreEqual(5.6, cc.CommissionRate, .001); PaymentSchedule ps = e.Schedule; Assert.IsTrue(ps is BiWeeklySchedule); }
private void PrepareToSaveClassification(Employee employee) { PaymentClassification classification = employee.Classification; if (classification is HourlyClassification) { classificationCode = "hourly"; HourlyClassification hourlyClassification = classification as HourlyClassification; insertClassificationCommand = CreateInsertHourlyClassificationCommand(hourlyClassification, employee); } else if (classification is SalariedClassification) { classificationCode = "salary"; SalariedClassification salariedClassification = classification as SalariedClassification; insertClassificationCommand = CreateInsertSalariedClassificationCommand(salariedClassification, employee); } else if (classification is CommissionClassification) { classificationCode = "commission"; CommissionClassification commissionClassification = classification as CommissionClassification; insertClassificationCommand = CreateInsertCommissionClassificationCommand(commissionClassification, employee); } else { classificationCode = "unknown"; } }
private void PrepareToSavePaymentClassification(Employee employee) { PaymentClassification paymentClassification = employee.Classification; if (paymentClassification is HourlyClassification) { classificatinCode = "hourly"; HourlyClassification hourlyClassification = paymentClassification as HourlyClassification; CreateInsertHourlyCommand(employee, hourlyClassification); } else if (paymentClassification is SalariedClassification) { classificatinCode = "salaried"; SalariedClassification salariedClassification = paymentClassification as SalariedClassification; CreateInsertSalariedCommand(employee, salariedClassification); } else if (paymentClassification is CommissionClassification) { classificatinCode = "commission"; CommissionClassification commissionClassification = paymentClassification as CommissionClassification; CreatInsertCommissionedCommand(employee, commissionClassification); } else { classificatinCode = "unknown"; } }
private SqlCommand CreateInsertCommissionClassificationCommand(CommissionClassification classification, Employee employee) { string sql = "insert into CommissionedClassification values (@Salary, @Commission, @EmpId)"; SqlCommand command = new SqlCommand(sql); command.Parameters.Add("@Salary", classification.BaseRate); command.Parameters.Add("@Commission", classification.CommissionRate); command.Parameters.Add("@EmpId", employee.EmpId); return(command); }
private void CreatInsertCommissionedCommand(Employee employee, CommissionClassification commissionClassification) { string sql = "insert into CommissionedClassification " + "values (@Salary, @Commission, @EmpId)"; insertPaymentClassificationCommand = new SqlCommand(sql); insertPaymentClassificationCommand.Parameters.AddWithValue("@Salary", commissionClassification.BaseRate); insertPaymentClassificationCommand.Parameters.AddWithValue("@Commission", commissionClassification.CommissionRate); insertPaymentClassificationCommand.Parameters.AddWithValue("@EmpId", employee.EmpId); }
private void SetPaymentClassification() { PaymentClassification classification = employee.Classfication; if (classification is HourlyClassification) { classificationCode = "hourly"; HourlyClassification hourlyClassification = classification as HourlyClassification; insertClassificationSql = "insert into HourlyClassification values " + "(@HourlyRate, @EmpId)"; classificationParameters = new object[] { hourlyClassification.HourlyRate, employee.EmpId }; } else if (classification is SalariedClassification) { classificationCode = "salary"; SalariedClassification salariedClassification = classification as SalariedClassification; insertClassificationSql = "insert into SalariedClassification values (@Salary, @EmpId)"; classificationParameters = new object[] { salariedClassification.Salary, employee.EmpId }; } else if (classification is CommissionClassification) { classificationCode = "commission"; CommissionClassification commissionClassification = classification as CommissionClassification; insertClassificationSql = "insert into CommissionedClassification values " + "(@Salary, @Commission, @EmpId)"; classificationParameters = new object[] { commissionClassification.BaseRate, commissionClassification.CommissionRate, employee.EmpId }; } else { classificationCode = "unknown"; } }
public void CreateCommisstionedClassificationFromRow() { operation = new LoadPaymentClassificationOperation(employee, "commission", null); operation.Prepare(); DataRow row = LoadEmployeeOperationTest.ShuntRow("Salary,Commission", 999.99, 9.9); operation.CreateClassification(row); PaymentClassification classification = this.operation.Classification; Assert.IsTrue(classification is CommissionClassification); CommissionClassification commissionClassification = classification as CommissionClassification; Assert.AreEqual(999.99, commissionClassification.BaseRate, 0.01); Assert.AreEqual(9.9, commissionClassification.CommissionRate, 0.01); }
public void ExecuteTest() { AddEmployeeTransaction addEmp = new AddCommissionedEmployee(3, "Dalai", "Bree Street", 0.6, 0.7, database); addEmp.Execute(); Employee emp = database.GetEmployee(3); Assert.IsNotNull(emp); PaymentClassification classification = emp.Classification; PaymentMethod method = emp.Method; PaymentSchedule schedule = emp.Schedule; Assert.AreEqual("Dalai", emp.Name); Assert.IsTrue(classification is CommissionClassification); Assert.IsTrue(method is HoldMethod); Assert.IsTrue(schedule is BiWeeklySchedule); CommissionClassification hourlyClassifiction = classification as CommissionClassification; Assert.AreEqual(0.6, hourlyClassifiction.BaseRate, 0.0001); Assert.AreEqual(0.7, hourlyClassifiction.CommissionRate, 0.0001); }
public void ExecuteTest() { int empId = 12; DateTime dateTime = new DateTime(2013, 2, 5); double amount = 2300; AddEmployeeTransaction addEmpTrans = new AddCommissionedEmployee(empId, "Fasa", "quanwan", 2000, 3.12, database); addEmpTrans.Execute(); SalesReceiptTransaction salesRecTrans = new SalesReceiptTransaction(dateTime, amount, empId, database); salesRecTrans.Execute(); Employee emp = database.GetEmployee(empId); Assert.IsNotNull(emp); Assert.IsTrue(emp.Classification is CommissionClassification); CommissionClassification cc = emp.Classification as CommissionClassification; SalesReceipt sr = cc.GetSalesReceipt(dateTime); Assert.AreEqual(sr.Date, dateTime); Assert.AreEqual(sr.Amount, amount); }
public void ExecuteTest() { int empId = 28; double baseRate = 2.3; double commissionRate = 5.6; AddEmployeeTransaction addSalEmp = new AddSalariedEmployee(empId, "kara", "samubola", 3000, database); addSalEmp.Execute(); ChangeClassificationTranscation changeCommissionedTrans = new ChangeCommissionedTransaction(empId, baseRate, commissionRate, database); changeCommissionedTrans.Execute(); Employee emp = database.GetEmployee(empId); Assert.IsNotNull(emp); Assert.IsTrue(emp.Classification is CommissionClassification); CommissionClassification hc = emp.Classification as CommissionClassification; Assert.IsNotNull(hc); Assert.AreEqual(hc.BaseRate, baseRate); Assert.AreEqual(hc.CommissionRate, commissionRate); }