예제 #1
0
        public void GivenEmployeeAndPyarollTable_AddDataToEmployeeAndPayroll_UsingThread()
        {
            //Make sure to change ID of each Employee Data for test to pass to be same and unique, due to Primary Key and Foreign Key Constraint.

            //Arrange

            ///Declaring EmployeeRepo object
            EmployeeRepo repo = new EmployeeRepo();


            ///List of PreDefined Employee Details To be added to Payroll Table
            List <PayrollModel> employeePayroll_List = new List <PayrollModel>()
            {
                new PayrollModel {
                    emp_Id = 319, basicPay = 600, deductions = 100, taxablePay = 200, NetPay = 200
                },
                new PayrollModel {
                    emp_Id = 321, basicPay = 200, deductions = 100, taxablePay = 200, NetPay = 200
                },
                new PayrollModel {
                    emp_Id = 330, basicPay = 700, deductions = 100, taxablePay = 200, NetPay = 200
                }
            };

            ///List of Predefined Employee Details to be added to Employee Table
            List <EmployeeTableModel> employeeList = new List <EmployeeTableModel>()
            {
                new EmployeeTableModel {
                    emp_Id = 319, name = "anuj", salary = 600, start_date = "2014-01-02", gender = 'M'
                },
                new EmployeeTableModel {
                    emp_Id = 321, name = "juna", salary = 600, start_date = "2014-06-01", gender = 'M'
                },
                new EmployeeTableModel {
                    emp_Id = 330, name = "abc", salary = 800, start_date = "2014-03-08", gender = 'F'
                }
            };

            //Act
            ///Calling Threaded Method, passing List of each Employees to be added in Database Tables
            repo.AddEmployeeDataToPayrollAndEmployee_PayrollUsingThread(employeePayroll_List, employeeList);


            //Assert
            Console.WriteLine(employeeList.Count + " " + repo.EmployeeTableData.Count);
            Assert.AreEqual(employeeList.Count, repo.EmployeeTableData.Count);
        }