Exemple #1
0
        public void CreateCompanyStaffTest()
        {
            Company     company   = new Company();
            StaffMember Employee1 = CompanyStaff.CreateMember(
                StaffMemberType.Emloyee,
                "Employee1",
                new DateTime(2017, 10, 1),
                100
                );
            StaffMember Employee2 = CompanyStaff.CreateMember(
                StaffMemberType.Emloyee,
                "Employee2",
                new DateTime(2000, 10, 1),
                100
                );
            StaffMember Manager1 = CompanyStaff.CreateMember(
                StaffMemberType.Manager,
                "Manager1",
                new DateTime(2017, 10, 1),
                100,
                new List <StaffMember>()
            {
                Employee1, Employee2
            }
                );
            StaffMember Manager2 = CompanyStaff.CreateMember(
                StaffMemberType.Manager,
                "Manager2",
                new DateTime(2000, 10, 1),
                100,
                new List <StaffMember>()
            {
                Manager1
            }
                );
            StaffMember Employee3 = CompanyStaff.CreateMember(
                StaffMemberType.Emloyee,
                "Employee3",
                new DateTime(2017, 10, 1),
                100
                );
            StaffMember Manager3 = CompanyStaff.CreateMember(
                StaffMemberType.Manager,
                "Manager3",
                new DateTime(2017, 10, 1),
                100,
                new List <StaffMember>()
            {
                Employee3
            }
                );
            StaffMember Sales1 = CompanyStaff.CreateMember(
                StaffMemberType.Sales,
                "Sales1",
                new DateTime(2017, 10, 1),
                100,
                new List <StaffMember>()
            {
                Manager2, Manager3
            }
                );

            company.BoardMembers.Add(Sales1);
            Assert.AreEqual(Employee1.CurrentSalary(), 103);
            Assert.AreEqual(Employee2.CurrentSalary(), 130);
            Assert.AreEqual(Manager1.CurrentSalary(), 106.165);
            Assert.AreEqual(Manager2.CurrentSalary(), 140.530825);
            Assert.AreEqual(Employee3.CurrentSalary(), 103);
            Assert.AreEqual(Manager3.CurrentSalary(), 105.515);
            Assert.AreEqual(Sales1.CurrentSalary(), 103.064632475);
            Assert.AreEqual(Math.Round(company.getSalariesSum(), 9), 791.275457475);
        }