Ejemplo n.º 1
0
        public void TestChangeHourlyTransaction()
        {
            int empId = 3;
            AddCommissionedEmployee t =
                new AddCommissionedEmployee(
                    empId, "Lance", "Home", 2500, 3.2, database);

            t.Execute();
            ChangeHourlyTransaction cht =
                new ChangeHourlyTransaction(empId, 27.52, database);

            cht.Execute();
            Employee e = database.GetEmployee(empId);

            Assert.IsNotNull(e);
            PaymentClassification pc = e.Classification;

            Assert.IsNotNull(pc);
            Assert.IsTrue(pc is HourlyClassification);
            HourlyClassification hc = pc as HourlyClassification;

            Assert.AreEqual(27.52, hc.HourlyRate, .001);
            PaymentSchedule ps = e.Schedule;

            Assert.IsTrue(ps is WeeklySchedule);
        }
Ejemplo n.º 2
0
        public void TestChangeSalariedTransaction()
        {
            var empId = 1;
            var addTx = new AddCommissionedEmployee(empId, "Lance", "Home", 2500, 3.2M);

            addTx.Execute();

            var changeSalariedTx = new ChangeSalariedTransaction(empId, 2000M);

            changeSalariedTx.Execute();

            var employee = Database.GetEmployee(empId);

            Assert.IsNotNull(employee, "employee not found in database");

            var classification = employee.GetClassification();

            Assert.IsInstanceOfType(classification, typeof(SalariedClassification), "employee does not have salaried classification");

            var salariedClassification = (SalariedClassification)classification;

            Assert.AreEqual(2000M, salariedClassification.Salary);

            var schedule = employee.GetSchedule();

            Assert.IsInstanceOfType(schedule, typeof(MonthlySchedule), "schedule is not monthly");
        }
Ejemplo n.º 3
0
        public void TestSalesReceiptTransaction()
        {
            int empId = 2;
            var addTx = new AddCommissionedEmployee(empId, "Bill", "Home", 1000M, 3.2M);

            addTx.Execute();

            var salesReceiptTX = new SalesReceiptTransaction(1000M, new Date(10, 31, 2001), empId);

            salesReceiptTX.Execute();

            var employee = Database.GetEmployee(empId);

            Assert.IsNotNull(employee);

            PaymentClassification classification = employee.GetClassification();
            var commissionedClassification       = (CommissionedClassification)classification;

            var receipts = commissionedClassification.GetSalesReceiptsForDate(new Date(10, 31, 2001));

            Assert.AreEqual(1, receipts.Count, "Receipt count for date is not 1");
            var firstReceipt = receipts.First();

            Assert.AreEqual(1000M, firstReceipt.Amount);
        }
Ejemplo n.º 4
0
        public void TestPaySingleCommissionedEmployeeWithTwoSales()
        {
            int empId = 1;

            var addTx = new AddCommissionedEmployee(empId, "Bob", "Home", 1000, 0.2M);

            addTx.Execute();

            var saleTx1 = new SalesReceiptTransaction(100, new Date(11, 9, 2001), empId);

            saleTx1.Execute();

            var saleTx2 = new SalesReceiptTransaction(500, new Date(11, 9, 2001), empId);

            saleTx2.Execute();

            var payDate  = new Date(11, 16, 2001);
            var paydayTx = new PaydayTransaction(payDate);

            paydayTx.Execute();

            var paycheck = paydayTx.GetPaycheck(empId);

            ValidateCommisionedPaycheck(paydayTx, empId, payDate, 1120M);
        }
Ejemplo n.º 5
0
        public void TestSalesReceiptTransaction()
        {
            int      empId            = 6;
            DateTime saleDate         = new DateTime(2017, 09, 07);
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Commissioned", "Sertãozinho", 1000, 10, database);

            t.Execute();

            Employee e = database.GetEmployee(empId);

            Assert.IsNotNull(e);

            PaymentClassification pc = e.Classification;

            Assert.IsTrue(pc is CommissionedClassification);

            SalesReceiptTransaction srt = new SalesReceiptTransaction(empId, saleDate, 100.00, database);

            srt.Execute();

            CommissionedClassification cc = pc as CommissionedClassification;
            SalesReceipt sr = cc.GetSalesReceipt(saleDate);

            Assert.IsNotNull(sr);
            Assert.AreEqual(100.00, sr.SaleAmount, .001);
        }
Ejemplo n.º 6
0
        public void TestAddCommissionEmployee()
        {
            int empId = 1;
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Bob", "Home", 1000.00, 500.00);

            t.Execute();
            Employee e = PayrollDatabase.GetEmployee(empId);

            Assert.AreEqual("Bob", e.Name);

            PaymentClassification pc = e.Classification;

            Assert.IsTrue(pc is CommissionedClassification);
            CommissionedClassification sc = pc as CommissionedClassification;

            Assert.AreEqual(1000, sc.Salary);
            Assert.AreEqual(500, sc.CommissionRate);

            PaymentSchedule ps = e.Schedule;

            Assert.IsTrue(ps is BiweeklySchedule);
            PaymentMethod pm = e.Method;

            Assert.IsTrue(pm is HoldMethod);
        }
Ejemplo n.º 7
0
        public void TestAddCommissionedEmployee()
        {
            int    empId              = 2;
            string name               = "Tadeusz";
            double salary             = 1000.0;
            double commissionedRate   = 5.0;
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, name, "Home", salary, commissionedRate);

            t.Execute();

            Employee e = PayrollDatabase.GetEmployee(empId);

            Assert.AreEqual(name, e.Name);

            IPaymentClassification pc = e.Classification;

            Assert.IsTrue(pc is CommissionedClassification);

            CommissionedClassification cc = pc as CommissionedClassification;

            Assert.AreEqual(salary, cc.Salary, .001);
            Assert.AreEqual(commissionedRate, cc.CommissionRate, .001);
            IPaymentSchedule ps = e.Schedule;

            Assert.IsTrue(ps is BiweeklySchedule);

            IPaymentMethod pm = e.Method;

            Assert.IsTrue(pm is HoldMethod);
        }
Ejemplo n.º 8
0
        public void TestSalesReceiptTransaction()
        {
            int empId = 4;
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Bill", "Home", 2500, 3.2);

            t.Execute();

            SalesReceiptTransaction srt = new SalesReceiptTransaction(new DateTime(2005, 7, 31), 20, empId);

            srt.Execute();

            Employee e = PayrollDatabase.GetEmployee(empId);

            Assert.IsNotNull(e);

            PaymentClassification pc = e.Classification;

            Assert.IsTrue(pc is CommissionedClassification);
            CommissionedClassification hc = pc as CommissionedClassification;

            SalesReceipt sr = hc.GetSalesReceipt(new DateTime(2005, 7, 31));

            Assert.IsNotNull(sr);
            Assert.AreEqual(20, sr.Amount);
        }
Ejemplo n.º 9
0
        public void TestAddCommissionedEmployee()
        {
            const int empId = 3;
            var       t     = new AddCommissionedEmployee(empId, "Bill", "Home", 2500.00, 3.2);

            t.Execute();

            var e = PayrollDatabase.GetEmployee(empId);

            Assert.AreEqual("Bill", e.Name);

            var pc = e.Classification;

            Assert.IsTrue(pc is CommissionedClassification);

            var cc = pc as CommissionedClassification;

            Assert.AreEqual(2500.00, cc.Salary, 0.001);
            Assert.AreEqual(3.2, cc.CommissionRate, 0.001);
            var ps = e.Schedule;

            Assert.IsTrue(ps is BiweeklySchedule);

            var pm = e.Method;

            Assert.IsTrue(pm is HoldMethod);
        }
Ejemplo n.º 10
0
        public void TestPayCommissionedEmployeeTwoSalesReceipts()
        {
            const int empId = 30;
            var       t     = new AddCommissionedEmployee(empId, "Bob", "Home", 2500.00, 3.2);

            t.Execute();
            var payDate = new DateTime(2020, 7, 17);
            var srt     = new SalesReceiptTransaction(payDate, 100.0, empId);

            srt.Execute();
            var srt2 = new SalesReceiptTransaction(payDate.AddDays(-1), 200.0, empId);

            srt2.Execute();
            var pt = new PaydayTransaction(payDate);

            pt.Execute();

            var pc = pt.GetPaycheck(empId);

            Assert.IsNotNull(pc);
            Assert.AreEqual(payDate, pc.PayDate);
            Assert.AreEqual((100.0 + 200) * 3.2, pc.GrossPay, 0.001);
            Assert.AreEqual("Hold", pc.GetField("Disposition"));
            Assert.AreEqual(0.0, pc.Deductions, 0.001);
            Assert.AreEqual((100.0 + 200) * 3.2, pc.NetPay, 0.001);
        }
Ejemplo n.º 11
0
        public void TestPayCommissionedEmployeeNoSalesReceipts()
        {
            const int empId = 28;
            var       t     = new AddCommissionedEmployee(empId, "Bob", "Home", 2500.00, 3.2);

            t.Execute();

            var payDate = new DateTime(2020, 7, 17);
            var pt      = new PaydayTransaction(payDate);

            pt.Execute();
            var pc = pt.GetPaycheck(empId);

            Assert.IsNotNull(pc);
            Assert.AreEqual(payDate, pc.PayDate);
            Assert.AreEqual(0.0, pc.GrossPay, 0.001);
            Assert.AreEqual("Hold", pc.GetField("Disposition"));
            Assert.AreEqual(0.0, pc.Deductions, 0.001);
            Assert.AreEqual(0.0, pc.NetPay, 0.001);

            var payDate2 = new DateTime(2020, 7, 31);
            var pt2      = new PaydayTransaction(payDate2);

            pt2.Execute();

            var pc2 = pt2.GetPaycheck(empId);

            Assert.IsNotNull(pc2);
            Assert.AreEqual(payDate2, pc2.PayDate);
            Assert.AreEqual(2500.0, pc2.GrossPay, 0.001);
            Assert.AreEqual("Hold", pc2.GetField("Disposition"));
            Assert.AreEqual(0.0, pc2.Deductions, 0.001);
            Assert.AreEqual(2500.0, pc2.NetPay, 0.001);
        }
Ejemplo n.º 12
0
        public void TestAddCommissionedEmployee()
        {
            int empId = 3;

            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Comissionado", "Endereço", 500.00, 10.00, database);

            t.Execute();

            Employee e = database.GetEmployee(empId);

            Assert.AreEqual("Comissionado", e.Name);

            PaymentClassification pc = e.Classification;

            Assert.IsTrue(pc is CommissionedClassification);

            CommissionedClassification cc = pc as CommissionedClassification;

            Assert.AreEqual(500.0, cc.BaseRate, .001);
            Assert.AreEqual(10.0, cc.CommissionRate, .001);

            PaymentSchedule ps = e.Schedule;

            Assert.IsTrue(ps is BiweeklySchedule);

            PaymentMethod pm = e.Method;

            Assert.IsTrue(pm is HoldMethod);
        }
Ejemplo n.º 13
0
        public void TestAddCommissionedEmployee()
        {
            int empId = 3;
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Jane", "Field", 1000.00, 0.15);

            t.Execute();

            Employee e = PayrollDatabase.GetEmployee(empId);

            Assert.AreEqual("Jane", e.Name);

            PaymentClassification pc = e.Classification;

            Assert.IsTrue(pc is CommissionedClassification);
            CommissionedClassification cc = pc as CommissionedClassification;

            Assert.AreEqual(1000.00, cc.Salary, .001);
            Assert.AreEqual(0.15, cc.CommissionRate, .001);
            PaymentSchedule ps = e.Schedule;

            Assert.IsTrue(ps is BiweeklySchedule);

            PaymentMethod pm = e.Method;

            Assert.IsTrue(pm is HoldMethod);
        }
Ejemplo n.º 14
0
        public void TestAddCommisionedEmployee()
        {
            int empId = 1;
            var t     = new AddCommissionedEmployee(empId, "Bob", "Home", 1000.0M, 50.0M);

            t.Execute();

            var e = Database.GetEmployee(empId);

            Assert.AreEqual("Bob", e.Name);

            PaymentClassification pc = e.GetClassification();

            CommissionedClassification sc = (CommissionedClassification)pc;

            Assert.AreEqual(sc.Salary, 1000.00M);
            Assert.AreEqual(sc.CommissionRate, 50.0M);

            PaymentSchedule ps = e.GetSchedule();

            Assert.IsInstanceOfType(ps, typeof(BiweeklySchedule));

            PaymentMethod pm = e.GetMethod();

            Assert.IsInstanceOfType(pm, typeof(HoldMethod));
        }
Ejemplo n.º 15
0
        public void TestChangeHourlyTransaction()
        {
            var empId = 1;
            var addTx = new AddCommissionedEmployee(empId, "Lance", "Home", 2500, 3.2M);

            addTx.Execute();

            var changeHourlyTx = new ChangeHourlyTransaction(empId, 27.25M);

            changeHourlyTx.Execute();

            var employee = Database.GetEmployee(empId);

            Assert.IsNotNull(employee, "employee not found in database");

            var classification = employee.GetClassification();

            Assert.IsInstanceOfType(classification, typeof(HourlyClassification), "employee does not have hourly classification");

            var hourlyClassification = (HourlyClassification)classification;

            Assert.AreEqual(27.25M, hourlyClassification.HourlyRate);

            var schedule = employee.GetSchedule();

            Assert.IsInstanceOfType(schedule, typeof(WeeklySchedule), "schedule is not weekly");
        }
Ejemplo n.º 16
0
        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 PaySingleCommissionedEmployeeTwoSalesReceipts()
        {
            int empId = 328;
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Bill", "Home", 1000, 15);

            t.Execute();

            DateTime payDate            = new DateTime(2001, 11, 7); // Friday
            SalesReceiptTransaction tct = new SalesReceiptTransaction(payDate, 200.0, empId);

            tct.Execute();

            SalesReceiptTransaction tct2 = new SalesReceiptTransaction(payDate.AddDays(-1), 100.0, empId);

            tct.Execute();

            PaydayTransaction pt = new PaydayTransaction(payDate);

            pt.Execute();

            double commissionPay = ((200 * 15) / 100) + ((100 * 15) / 100);
            double salaryHalfPay = (1000 / 2);
            var    pay           = commissionPay + salaryHalfPay;

            ValidateHourlyPaycheck(pt, empId, payDate, pay);
        }
Ejemplo n.º 18
0
        public void TestAddCommissionedEmployee()
        {
            #region Arrange
            int    empId              = 3;
            string userName           = "******";
            string address            = "Xindian";
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, userName, address, 500.0, 97.5);
            #endregion

            #region Action
            t.Execute();
            #endregion

            #region Assert
            Employee e = PayrollRepository.GetEmployee(empId);
            e.Name.Should().Be(userName);
            e.Address.Should().Be(address);

            PaymentClassification pc = e.Classification;
            pc.Should().BeOfType <CommissionedClassification>();
            CommissionedClassification cc = pc as CommissionedClassification;
            cc.Salary.Should().Be(500.0);
            cc.CommissionedRate.Should().Be(97.5);

            PaymentSchedule ps = e.Schedule;
            ps.Should().BeOfType <BiweeklySchedule>();

            PaymentMethod pm = e.Method;
            pm.Should().BeOfType <HoldMethod>();
            #endregion
        }
        public void TestSalesReceiptTransaction()
        {
            int empId = 5;
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Bill", "Home", 1000.00, 15);

            t.Execute();

            SalesReceiptTransaction tct = new SalesReceiptTransaction(new DateTime(2005, 7, 31), 200.0, empId);

            tct.Execute();

            Employee e = PayrollDatabase.GetEmployee(empId);

            Assert.IsNotNull(e);

            PaymentClassification pc = e.Classification;

            Assert.IsTrue(pc is ComissinedClassification);

            ComissinedClassification hc = pc as ComissinedClassification;
            SalesReceipt             tc = hc.GetSalesReceipt(new DateTime(2005, 7, 31));

            Assert.IsNotNull(tc);
            Assert.AreEqual(200.0, tc.Amount);
        }
        public void TestAddCommissionedEmployee()
        {
            int empId = 1;
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Bob", "Home", 1000.00, 15);

            t.Execute();

            Employee e = PayrollDatabase.GetEmployee(empId);

            Assert.AreEqual("Bob", e.Name);

            PaymentClassification pc = e.Classification;

            Assert.IsTrue(pc is ComissinedClassification);

            ComissinedClassification cc = pc as ComissinedClassification;

            Assert.AreEqual(1000.00, cc.Salary, .001);
            Assert.AreEqual(15, cc.ComissionRate, .001);

            PaymentSchedule ps = e.Schedule;

            Assert.IsTrue(ps is BiweeklySchedule); // They are paid every other Friday

            PaymentMethod pm = e.Method;

            Assert.IsTrue(pm is HoldMethod);
        }
Ejemplo n.º 21
0
        public void TestChangeSalaryTransaction()
        {
            int empId = 4;
            AddCommissionedEmployee t =
                new AddCommissionedEmployee(
                    empId, "Lance", "Home", 2500, 3.2, database);

            t.Execute();
            ChangeSalariedTransaction cst =
                new ChangeSalariedTransaction(empId, 3000.00, database);

            cst.Execute();
            Employee e = database.GetEmployee(empId);

            Assert.IsNotNull(e);
            PaymentClassification pc = e.Classification;

            Assert.IsNotNull(pc);
            Assert.IsTrue(pc is SalariedClassification);
            SalariedClassification sc = pc as SalariedClassification;

            Assert.AreEqual(3000.00, sc.Salary, .001);
            PaymentSchedule ps = e.Schedule;

            Assert.IsTrue(ps is MonthlySchedule);
        }
Ejemplo n.º 22
0
        public void PaySingleCommissionedEmployeeWithSalesReceiptsSpanningTwoPayPeriods()
        {
            int empId = 2;
            AddCommissionedEmployee t = new AddCommissionedEmployee(
                empId, "Bob", "Home", 1000.00, 10.00, database);

            t.Execute();

            DateTime payDate = new DateTime(2001, 11, 16); // Friday
            DateTime dateInPreviousPayPeriod = new DateTime(2001, 11, 2);

            SalesReceiptTransaction srt = new SalesReceiptTransaction(
                payDate, 100.00, empId, database);

            srt.Execute();
            SalesReceiptTransaction srt2 = new SalesReceiptTransaction(
                dateInPreviousPayPeriod, 200.00, empId, database);

            srt2.Execute();
            PaydayTransaction pt = new PaydayTransaction(payDate, database);

            pt.Execute();

            ValidatePaycheck(pt, empId, payDate, 1010.00);
        }
Ejemplo n.º 23
0
        public void SalesReceiptTransaction()
        {
            int empId = 5;
            AddCommissionedEmployee t = new AddCommissionedEmployee(
                empId, "Bob", "Home", 1000.00, 10, database);

            t.Execute();

            SalesReceiptTransaction srt = new SalesReceiptTransaction(
                new DateTime(2005, 7, 31), 100.0, empId, database);

            srt.Execute();

            Employee e = database.GetEmployee(empId);

            Assert.IsNotNull(e);

            PaymentClassification pc = e.Classification;

            Assert.IsTrue(pc is CommissionedClassification);
            CommissionedClassification cc = pc as CommissionedClassification;

            SalesReceipt sr = cc.GetSalesReceipt(new DateTime(2005, 7, 31));

            Assert.IsNotNull(sr);
            Assert.AreEqual(100, sr.Amount);
        }
        public void TestAddSalesReceiptTransaction()
        {
            #region Arrange
            int employeeId            = 5;
            AddCommissionedEmployee t = new AddCommissionedEmployee(employeeId, "user", "home", 1000, 97.5);
            t.Execute();

            DateTime workingDate        = new DateTime(2019, 4, 21);
            SalesReceiptTransaction srt = new SalesReceiptTransaction(
                employeeId, workingDate, 200
                );
            #endregion

            #region Action
            srt.Execute();
            #endregion

            #region Assert
            Employee e = PayrollRepository.GetEmployee(employeeId);
            e.Should().NotBeNull();

            e.Classification.Should().BeOfType <CommissionedClassification>();
            CommissionedClassification cc = e.Classification as CommissionedClassification;

            SalesReceipt sr = cc.GetSalesReceipt(workingDate);
            sr.Should().NotBeNull();
            sr.Amount.Should().Be(200);
            #endregion
        }
Ejemplo n.º 25
0
        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);
        }
Ejemplo n.º 26
0
        private int AddCommissionedEmployee()
        {
            int employeeId         = 1;
            AddEmployTransaction t = new AddCommissionedEmployee(
                employeeId, "Bob", "Home", 800.0, 0.75
                );

            t.Execute();
            return(employeeId);
        }
Ejemplo n.º 27
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            int                     id                      = int.Parse(TextBox1.Text);
            string                  name                    = TextBox2.Text;
            string                  address                 = TextBox3.Text;
            double                  baseRate                = float.Parse(TextBox4.Text);
            double                  commissionRate          = float.Parse(TextBox5.Text);
            PayrollDatabase         database                = new FunctionPayrollDatabase();
            AddCommissionedEmployee addCommissionedEmployee = new AddCommissionedEmployee(id, name, address, baseRate, commissionRate, database);

            addCommissionedEmployee.Execute();
        }
 public void DeleteEmployee()
 {
     int empid = 4;
     AddCommissionedEmployee t = new AddCommissionedEmployee(empid, "Dasha", "Slancy", 265, 123.804);
     t.Execute();
     Employee e = PayrollDatabase.GetEmployee(empid);
     Assert.IsNotNull(e);
     DeleteEmployeeTransaction dt = new DeleteEmployeeTransaction(empid);
     dt.Execute();
     e = PayrollDatabase.GetEmployee(empid);
     Assert.IsNull(e);
 }
Ejemplo n.º 29
0
 public void DeleteEmployee()
 {
     int empId = 4;
     AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Bill", "Home", 2500, 3.2);
     t.Execute();
     Employee e = PayrollDatabase.GetEmployee(empId);
     Assert.IsNotNull(e);
     DeleteEmployeeTransaction dt = new DeleteEmployeeTransaction(empId);
     dt.Execute();
     e = PayrollDatabase.GetEmployee(empId);
     Assert.IsNull(e);
 }
Ejemplo n.º 30
0
        public void PayingCommisionEmployeeNoSalesRecipt()
        {
            int empId = 4;
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Bill", "Home", 2500, 3.2);

            t.Execute();

            DateTime          payDate = new DateTime(2001, 11, 2);
            PaydayTransaction pt      = new PaydayTransaction(payDate);

            pt.Execute();
            ValidateCommisionPaycheck(pt, empId, payDate, 2500 / 2);
        }
Ejemplo n.º 31
0
        public void PayingSingleCommissionedEmployeeNoReceipts()
        {
            int empId = 2;
            AddCommissionedEmployee t = new AddCommissionedEmployee(
                empId, "Bill", "Home", 1500, 10, database);

            t.Execute();
            DateTime          payDate = new DateTime(2001, 11, 16); // Payday
            PaydayTransaction pt      = new PaydayTransaction(payDate, database);

            pt.Execute();
            ValidatePaycheck(pt, empId, payDate, 1500.0);
        }
Ejemplo n.º 32
0
        public void ExecuteTest_PaySingleCommissionedEmployeeNoReceipts()
        {
            int empId = 2;

            database.DeleteEmployee(empId);
            AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Bill", "Home", 1500, 10, database);

            t.Execute();
            DateTime          payDate = new DateTime(2018, 1, 5); // Payday
            PayDayTransaction pt      = new PayDayTransaction(payDate, database);

            pt.Execute();
            ValidatePaycheck(pt, empId, payDate, 1500.0, 0);
        }
Ejemplo n.º 33
0
 public void TestAddCommissionedEmployee()
 {
     int empId = 1;
     AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Bob", "Home", 1000.00, 12.00);
     t.Execute();
     Employee e = PayrollDatabase.GetEmployee(empId);
     Assert.AreEqual("Bob", e.Name);
     PaymentClassification pc = e.Classification;
     Assert.IsTrue(pc is CommissionedClassification);
     CommissionedClassification cc = pc as CommissionedClassification;
     Assert.AreEqual(1000.00, cc.Salary, .001);
     Assert.AreEqual(12.00, cc.CommissionRate, .001);
     PaymentSchedule ps = e.Schedule;
     Assert.IsTrue(ps is BiweeklySchedule);
     PaymentMethod pm = e.Method;
     Assert.IsTrue(pm is HoldMethod);
 }
 public void AddCommissionedEmployee()
 {
     int empid = 1;
     AddCommissionedEmployee t = new AddCommissionedEmployee(empid, "Dasha", "Slancy", 265, 123.804);
     t.Execute();
     Employee e = PayrollDatabase.GetEmployee(empid);
     Assert.AreEqual("Dasha", e.Name);
     PaymentClassification pc = e.Classification;
     Assert.IsTrue(pc is CommissionedClassification);
     CommissionedClassification sc = pc as CommissionedClassification;
     Assert.AreEqual(265, sc.Commission, .001);
     Assert.AreEqual(123.804, sc.Salary, .001);
     PaymentSchedule ps = e.Schedule;
     Assert.IsTrue(ps is BiweeklySchedule);
     PaymentMethod pm = e.Method;
     Assert.IsTrue(pm is HoldMethod);
 }
Ejemplo n.º 35
0
 public void TestSalesReceiptTransaction()
 {
     int empId = 6;
     AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Bob", "Home", 10.0, 12.0);
     t.Execute();
     SalesReceiptTransaction srt = new SalesReceiptTransaction(new DateTime(2015, 10, 31), 10, empId);
     srt.Execute();
     Employee e = PayrollDatabase.GetEmployee(empId);
     Assert.IsNotNull(e);
     PaymentClassification pc = e.Classification;
     Assert.IsTrue(pc is CommissionedClassification);
     CommissionedClassification cc = pc as CommissionedClassification;
     SalesReceipt sr = cc.GetSalesReceipt(new DateTime(2015, 10, 31));
     Assert.IsNotNull(sr);
     Assert.AreEqual(10, sr.Amount);
 }
Ejemplo n.º 36
0
 public void TestChangeHourlyTransaction()
 {
     int empId = 8;
     AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Lance", "Home", 2500, 3.2);
     t.Execute();
     ChangeHourlyTransaction cht = new ChangeHourlyTransaction(empId, 27.52);
     cht.Execute();
     Employee e = PayrollDatabase.GetEmployee(empId);
     Assert.IsNotNull(e);
     PaymentClassification pc = e.Classification;
     Assert.IsNotNull(pc);
     Assert.IsTrue(pc is HourlyClassification);
     HourlyClassification hc = pc as HourlyClassification;
     Assert.AreEqual(27.52, hc.HourlyRate, .001);
     PaymentSchedule ps = e.Schedule;
     Assert.IsTrue(ps is WeeklySchedule);
 }
Ejemplo n.º 37
0
 public void TestChangeCommissionedTransaction()
 {
     int empId = 9;
     AddCommissionedEmployee t = new AddCommissionedEmployee(empId, "Lance", "Home", 2500, 12.0);
     t.Execute();
     ChangeCommissionedTransaction cct = new ChangeCommissionedTransaction(empId, 200, 10.5);
     cct.Execute();
     Employee e = PayrollDatabase.GetEmployee(empId);
     Assert.IsNotNull(e);
     PaymentClassification pc = e.Classification;
     Assert.IsNotNull(pc);
     Assert.IsTrue(pc is CommissionedClassification);
     CommissionedClassification cc = pc as CommissionedClassification;
     Assert.AreEqual(200, cc.Salary, .001);
     Assert.AreEqual(10.5, cc.CommissionRate, .001);
     PaymentSchedule ps = e.Schedule;
     Assert.IsTrue(ps is BiweeklySchedule);
 }